def pread_chunk(self, position, chunk):
_complain_ifclosed(self.closed)<EOL>if position > self.size:<EOL><INDENT>raise IOError("<STR_LIT>")<EOL><DEDENT>return self.f.raw.pread_chunk(position, chunk)<EOL>
r"""
        Works like :meth:`pread`\ , but data is stored in the writable
        buffer ``chunk`` rather than returned. Reads at most a number of
        bytes equal to the size of ``chunk``\ .

        :type position: int
        :param position: position from which to read
        :type chunk: buffer
        :param chunk: a writable object that supports the buffer protocol
        :rtype: int
        :return: the number of bytes read