def read_ready(self):
self._lock.acquire()<EOL>try:<EOL><INDENT>if len(self._buffer) == <NUM_LIT:0>:<EOL><INDENT>return False<EOL><DEDENT>return True<EOL><DEDENT>finally:<EOL><INDENT>self._lock.release()<EOL><DEDENT>
Returns true if data is buffered and ready to be read from this
feeder.  A C{False} result does not mean that the feeder has closed;
it means you may need to wait before more data arrives.

@return: C{True} if a L{read} call would immediately return at least
    one byte; C{False} otherwise.
@rtype: bool