gpt4 book ai didi

language-agnostic - 非阻塞事件循环是如何工作的?

转载 作者:行者123 更新时间:2023-12-02 00:39:40 25 4
gpt4 key购买 nike

Twisted 有一个“非阻塞”事件循环。

我了解阻塞事件循环的作用(某种程度上,来自维基百科页面),但无法弄清楚非阻塞事件循环的作用。

最佳答案

while (true)
wait_for_events
handle_events

基本上,非阻塞事件循环利用允许同时等待多个事件的设备(select/poll 在 UNIX 上,WaitForMultipleEvents 在Windows,epoll 在 Linux kqueue 在 FreeBSD 等)。在主循环的每次迭代中,事件(文件描述符、计时器等)都在某种句柄中注册。然后,调用等待事件的函数(例如 select)。这通常会返回调用该函数期间发生的所有事件。最后,循环处理该事件 - 通常通过调用与事件关联的回调。

有关详细信息,请参阅 libevent 或某些 GUI 工具包事件循环的实现 - GTK+ 或 Qt。

关于language-agnostic - 非阻塞事件循环是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3071237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com