2013-07-15 31 views
0

我已經聲明長的長變量並更新並檢查主程序中的值。在信號處理程序中,我正在檢查它的值和更新值。假設如果我使操作原子化,在主程序的更新期間,我得到了信號處理程序,如果該變量已經在更新過程中,那麼在信號處理程序中,則信號處理程序不會更新狀態。當控制再次回來時,我失去了信號處理程序的例程功能。我怎樣才能避免這種情況?在信號處理程序中的可變的原子操作linux c

問候。
學習者

回答

2

使用sigaction()代替信號()。

+0

你可以傳遞變量的例子嗎? –