信号处理程序linux c中的变量原子操作

时间:2013-07-15 09:42:37

标签: linux

我已声明long long变量并更新并检查主例程中的值。在信号处理程序中,我正在检查其值并更新值。假设我将操作设为原子,在主程序更新期间,我得到了信号处理程序,如果该变量已经在更新过程中,那么信号处理程序就不会更新状态。当控制再次回来时,我失去了信号处理程序例程功能。我怎么能避免这个?

的问候。
学习者

1 个答案:

答案 0 :(得分:2)

使用sigaction()代替signal()。