python最多可以处理多少并发事件?
python最多可以处理多少并发事件?,python,events,watchdog,Python,Events,Watchdog,下面是移动事件监视程序的简单示例。如果我们运行此程序并在“monitor”文件夹(mv*.xml monitor)中移动50个文件,那么我们只收到1个事件。如果我们增加队列大小和超时,那么接收到的事件数将增加4到5,但其行为很奇怪 observer = Observer(timeout=0.001) observer.event_queue.maxsize=100 有人能解释一下如何接收所有事件吗。谢谢 import time from watchdog.observers
下面是移动事件监视程序的简单示例。如果我们运行此程序并在“monitor”文件夹(mv*.xml monitor)中移动50个文件,那么我们只收到1个事件。如果我们增加队列大小和超时,那么接收到的事件数将增加4到5,但其行为很奇怪
observer = Observer(timeout=0.001)
observer.event_queue.maxsize=100
有人能解释一下如何接收所有事件吗。谢谢
import time
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
class Myhandler(FileSystemEventHandler):
def on_moved(self, event):
print "Received evet:", event.dest_path
if __name__ == "__main__":
event_handler = Myhandler()
observer = Observer()
observer.schedule(event_handler, path='monitor', recursive=True)
observer.start()
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()
如果您只是在事件内部打印,那么一切都会正常进行,但是如果您在事件内部制作或使用某些密集功能,则在事件连续出现时,您可能会错过下一个。我尝试了上面的示例,将150个文件移到监视器文件夹中,而没有添加超时或队列修改。事情进展得很顺利。