gpt4 book ai didi

python-3.x - 为什么没有call_at_threadsafe和call_later_threadsafe?

转载 作者:行者123 更新时间:2023-12-03 17:38:32 25 4
gpt4 key购买 nike

我在Windows 32位元中使用Python 3.5.2,并且知道asyncio call_at不是线程安全的,因此除非我取消注释loop._write_to_self()行,否则以下代码将不会显示“ bomb”。

import asyncio
import threading


def bomb(loop):
loop.call_later(1, print, 'bomb')
print('submitted')
# loop._write_to_self()


if __name__ == '__main__':
loop = asyncio.get_event_loop()
threading.Timer(2, bomb, args=(loop,)).start()
loop.run_forever()


但是,我找不到有关为什么实现 call_at_threadsafecall_later_threadsafe的信息。原因存在吗?

最佳答案

只需使用loop.call_soon_threadsafe安排loop.call_later

loop.call_soon_threadsafe(loop.call_later, 1, print, 'bomb')

关于python-3.x - 为什么没有call_at_threadsafe和call_later_threadsafe?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40107563/

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