(self, inv_item, timeout=None)
Return the fetched object or None if the remote says it doesn't have it, or
        times out by exceeding `timeout` seconds.
Return the fetched object or None if the remote says it doesn't have it, or
        times out by exceeding `timeout` seconds.
Return the fetched object or None if the remote says it doesn t have it or times out by exceeding timeout seconds .
def fetch(self, inv_item, timeout=None):
        """
        Return the fetched object or None if the remote says it doesn't have it, or
        times out by exceeding `timeout` seconds.
        """
        future = self.futures.get(inv_item)
        if not future:
            future = asyncio.Future()
            self.futures[inv_item] = future
            self.request_q.put_nowait(inv_item)
        try:
            return (yield from asyncio.wait_for(future, timeout=timeout))
        except asyncio.TimeoutError:
            return None
def fetch ( self , inv_item , timeout = None ) : future = self . futures . get ( inv_item ) if not future : future = asyncio . Future ( ) self . futures [ inv_item ] = future self . request_q . put_nowait ( inv_item ) try : return ( yield from asyncio . wait_for ( future , timeout = timeout ) ) except asyncio . TimeoutError : return None