async def work_async(self):
        """Perform a single Connection iteration asynchronously."""
        try:
            raise self._error
        except TypeError:
            pass
        except Exception as e:
            _logger.warning("%r", e)
            raise
        try:
            await self.lock_async()
            if self._closing:
                _logger.debug("Connection unlocked but shutting down.")
                return
            await self.loop.run_in_executor(self._executor, functools.partial(self._conn.do_work))
        except asyncio.TimeoutError:
            _logger.debug("Connection %r timed out while waiting for lock acquisition.", self.container_id)
        finally:
            self.release_async()
async def work_async ( self ) : try : raise self . _error except TypeError : pass except Exception as e : _logger . warning ( "%r" , e ) raise try : await self . lock_async ( ) if self . _closing : _logger . debug ( "Connection unlocked but shutting down." ) return await self . loop . run_in_executor ( self . _executor , functools . partial ( self . _conn . do_work ) ) except asyncio . TimeoutError : _logger . debug ( "Connection %r timed out while waiting for lock acquisition." , self . container_id ) finally : self . release_async ( )
Perform a single Connection iteration asynchronously.