我有坐标列表,我必须使用pyautogui模拟鼠标点击。这些坐标基本上是从帧中从实时视频流中检索出来的。因此,为每个帧模拟鼠标单击并不够快。
所以我打算做的是:
这会解决问题吗?有没有其他方法可以使用pyautogui快速执行点击?
(我不熟悉多线程)
我认为这取决于,这是分配工作的常见模式。您的工作负载是否受限?如果是这样,线程将无法帮助您扩展,因为GIL争用。如果它是IO绑定而不是线程可能是一个好的起点。
有了thread pool pattern,你就会像你勾勒出的那样扇出工作:
如果您的处理受CPU限制,则使用相同模式的多处理池可能会有所帮助:
多处理DOES提供池抽象,除了队列需要某种进程间通信(由多处理队列处理)之外,它将是相同的。
https://docs.python.org/2/library/multiprocessing.html#using-a-pool-of-workers
每个应该相对容易设置,并且应该很容易对每个进行基准测试,看看它们是否提供了性能改进。