在使用Gtk和PyGTK时如何在Python中实现互斥

2024-04-25 04:27:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个应用程序,它使用

gobject.timeout_add(delay, function)

现在在我的函数中,我想测试并设置一些变量,例如

^{pr 1}$

现在要使这个线程安全,我必须使用互斥锁来锁定函数。 Gtk有可能吗?或者我可以使用来自threading的PythonLock对象吗?在


Tags: 对象函数add应用程序gtktimeoutfunctionpr
1条回答
网友
1楼 · 发布于 2024-04-25 04:27:54

我刚刚发现gobject.timeout_add(delay, function)和{}可以安全使用。我试过用

for i in range(X):
    gobject.idle_add(workerFunction)

并发现从来没有两个工作线程同时执行。这意味着gobject.timeout_add(delay, function)gobject.idle_add(function)执行的函数调用似乎是原子的,因为它们总是严格地一个接一个地执行。所以,即使是简单的支票张贴在问题是必要的。在

事实上,无论我做了什么,我都无法让任何种族状况显现出来。所以不需要额外的锁紧机构。在

相关问题 更多 >