【发布时间】:2020-07-23 02:26:31
【问题描述】:
我们所知道的:
- 不带单次选项的 QTimer 将在特定时间间隔发出超时信号。
- Timeout 会在发出时调用函数。
- 互斥锁将锁定一个变量,使其不被另一个线程修改。
我的问题是:
假设我有一个非常耗时的函数 F1 在一个线程中使用带有互斥锁的变量 A。而且,QTimer 正在运行一个循环调用函数 F2,该函数还在另一个线程中使用 A 和互斥锁。如果 F1 正在运行并且 A 被锁定,则 F2 将等待 A 解锁。 F1无限期运行时QTimer会不会堆积很多F2调用?
【问题讨论】:
-
会吗?你试过了吗?
-
我刚试过。不会的。
标签: python multithreading pyqt mutex qtimer