2013-12-18 104 views
3

我會寫一個小測試,通過捕獲任何中斷的信號來顯示epoll_Waitepoll_pwait()之間的差異。任何人都可以通過一個小代碼或任何方法提供給我,以找到它?如何中斷epoll_pwait捕獲信號

int epoll_pwait(int epfd, struct epoll_event *events, 
        int maxevents, int timeout, 
        const sigset_t *sigmask); 
+0

你有一些代碼嗎?爲了發送信號,我建議閱讀「男人1殺」和「男人2殺」。 – thuovila

回答

0

epoll_pwait不「抓信號」,它可以讓你設置原子的新工藝信號面具其在通話過程中才有效。請參閱手冊頁上的說明,例如http://linux.die.net/man/2/epoll_wait

你試圖實現什麼?如果你更具體,我可能會給你更多的信息。

2

如果您正在尋找將信號處理集成到epoll事件循環中的方法,請查看signalfd(2)man page

它會給你一個fd,你可以添加到你的pollset中,當你的進程(或者線程,如果這在你的情況下是相關的)接收到一個信號時通知你。