我对asyncio不太熟悉,但我希望有一些简单的方法可以使用asyncio.Queue将日志消息推送到队列而不是将它们写入磁盘,然后让一个工作人员线程等待这些队列事件,并在资源可用时将它们写入磁盘。这似乎是非常必要的,因为日志记录是许多代码中的一个巨大瓶颈,但并不总是需要实时。是否有任何预先存在的软件包,或者有经验的人可以编写一个简短的示例脚本来帮助我入门吗?注意:这需要与现有代码进行交互,因此将其全部打包在类中可能是首选。
答案 0 :(得分:1)
它是在最近的Python版本的标准库中处理的。有关信息,请参阅this post和official documentation。此功能早于asyncio
,因此不使用它(并不特别需要)。
对于Python 2.7,您可以使用提供等效功能的logutils包。