0

我已经通过以下代码注册了一个在后台工作的函数:

XtAppAddWorkProc(app, (XtWorkProc)NotifyEntryCallback, (XtPointer)ent);

如果我只在一个任务中调用这个函数一次就可以了(例如单击一个按钮)。但是当我在那个任务中调用它两次或更多次时,NotifyEntryCallback会被调用很多次(无穷大)。

我尝试存储XtAppAddWorkProc使用XtRemoveWorkProc功能来删除注册的功能,但它仍然不起作用。

我在谷歌上花了很多次,但不知道为什么会这样。请帮我解决它。

4

1 回答 1

0

最后,我找到了解决方案。我分享给任何面临同样问题的人:

XtWorkProc告诉系统调用是否重新注册函数中的返回值。在这种情况下,NotifyEntryCallback如果return True我不想再次调用它。

参考链接: http ://home.soka.ac.jp/~unemi/Motif/man3/XtWorkProc.html

于 2015-01-02T02:34:54.220 回答