async def run_task(self) -> None:
while self.running:<EOL><INDENT>try:<EOL><INDENT>item = self.QUEUE.get_nowait()<EOL>Log.debug('<STR_LIT>', self.name)<EOL>await self.run(item)<EOL>Log.debug('<STR_LIT>', self.name)<EOL>self.QUEUE.task_done()<EOL><DEDENT>except asyncio.QueueEmpty:<EOL><INDENT>if self.OPEN:<EOL><INDENT>await self.sleep(<NUM_LIT>)<EOL><DEDENT>else:<EOL><INDENT>Log.debug('<STR_LIT>', self.name)<EOL>return<EOL><DEDENT><DEDENT>except CancelledError:<EOL><INDENT>Log.debug('<STR_LIT>')<EOL>self.QUEUE.task_done()<EOL>raise<EOL><DEDENT>except Exception:<EOL><INDENT>Log.exception('<STR_LIT>', self.name)<EOL>self.QUEUE.task_done()<EOL><DEDENT><DEDENT>
Initialize the queue and spawn extra worker tasks if this if the
        first task.  Then wait for work items to enter the task queue, and
        execute the `run()` method with the current work item.