编写一个eventloop而不是使用现有的asyncio evenloop

时间:2018-12-14 06:42:00

标签: python-3.x python-asyncio event-loop

好吧,因此可以使用给定的 asyncio 的事件循环(Writing an EventLoop without using asyncio)来编写自定义的 eventloop

现在的问题是为什么?为什么更喜欢编写自定义而不是 asyncio 的eventloop?

1 个答案:

答案 0 :(得分:2)

  

为什么更喜欢编写一个比asyncio的eventloop更高的自定义?

通常,如果现有方法无法满足您的需求,那么您会发明一些新东西。或者可能是您认为自己可以更高效或更方便地进行操作。

首先,值得注意的是asyncio本身提供了multiple event loop implementations。原因是它们建立在不同的底层OS API罐behave differently之上。您可以选择(或编写自己的事件循环)最适合您的任务。

有时人们创建自己的事件循环实现以获得更好的性能。 uvloop是这种情况的一个很好的例子。

有时候人们会在其他非异步事件循环之上创建事件循环。例如,quamashQt之上提供事件循环。它允许使用PyQt编写异步程序。