我有这样的代码:
from twisted.internet import task
from twisted.internet import reactor
def Fun1():
print('No')
communicate1 = task.LoopingCall(Fun1)
communicate1.start(0.1)
reactor.run()
while True:
print('yes')
time.sleep(1)
它不应该同时运行 Func1 和 while 循环吗?怎么了?它只打印"否"。
反应器在单个进程和单个线程中进行多路复用。 它不会自动为您启动多个线程。
reactor.run()
预计将运行,直到整个程序关闭。 通常,在此之后没有应用程序代码。
也许您想启动多个进程,但您需要使用另一个库,例如 concurrent.futures
或 multiprocessing
或 Twisted 的spawnProcess()
。