0
A
回答
3
註冊搭上信號:
void termination_handler(int sig)
{
/* do something */
}
struct sigaction handler;
handler.sa_handler = termination_handler;
sigemptyset (&handler.sa_mask);
handler.sa_flags = SA_RESTART;
sigaction(SIGTERM, &handler, NULL);
這裏是一個很好example page。
你可以使用舊的風格,但不建議:
void termination_handler()
{
/* do something */
}
signal(SIGTERM, termination_handler);
相關問題
- 1. 如何使用C#發送SNMP陷阱?
- 2. 如何從「C」發送net-snmp陷阱
- 3. 如何使用PowerShell發送SNMP陷阱?
- 4. 從Java應用程序發送陷阱
- 5. C pthreads和信號發送
- 6. 在Java中發送陷阱v2
- 7. 定義MIB併發送SNMP陷阱.net
- 8. Datastax Opscenter 6.0不發送SNMP陷阱
- 9. 如何發送SNMP陷阱到不同的IP
- 10. 如何以非root用戶的身份發送snmp陷阱?
- 11. 如何發送信號?
- 12. pthread_kill()不發送信號到
- 13. 發送信號到進程
- 14. 從c#發送midi信號到ableton
- 15. 如何從javascript發送信號到qml
- 16. 如何將信號發送到PCI卡?
- 17. 發送SNMP陷阱到Nagios的特定主機
- 18. 不發送所有SNMP陷阱的應用程序
- 19. 如何發送DTMF信號的Symbian S60
- 20. 如何用C發送彩信#
- 21. 如何在JNI中將事件/信號從C發送到Java
- 22. android短信發送到收到號碼
- 23. 插入發送彩信到發送框
- 24. C獲取信號發送值
- 25. 如何向Testcontainers發送信號?
- 26. 如何向線程發送無信號?
- 27. 如何從代表發送信號
- 28. 如何從nodejs發送POSIX信號
- 29. 如何從python程序發送信號?
- 30. 發送信號給線程
權。這工作正常,我使用「信號」。在事件中,我向特定的PID發送kill命令,因爲該過程如何確定信號是按照我的方式發送的? – JAM 2011-05-05 03:46:30
你幾乎肯定希望'handler.sa_flags = SA_RESTART;'。非重新啓動信號會嚴重破壞不期望得到'EINTR'且不處理它的代碼。 – 2011-05-05 04:04:57
@R ..好點。修改爲反映 – pickypg 2011-05-05 04:20:02