sighandlers.cpp
来自「ACE自适配通信环境(ADAPTIVE Communication Enviro」· C++ 代码 · 共 54 行
CPP
54 行
// SigHandlers.cpp,v 1.2 2004/01/03 13:07:52 jwillemsen Exp#include "ace/OS_NS_unistd.h"#include "ace/Log_Msg.h"#include "ace/Signal.h"class MySignalHandler : public ACE_Event_Handler{public: MySignalHandler (int signum) : signum_(signum) { } virtual ~MySignalHandler () { } virtual int handle_signal (int signum, siginfo_t * = 0, ucontext_t * = 0) { ACE_TRACE (ACE_TEXT ("MySignalHandler::handle_signal")); // Make sure the right handler was called back.. ACE_ASSERT(signum == this->signum_); ACE_DEBUG ((LM_DEBUG, ACE_TEXT ("%d occured\n"), signum)); return 0; }private: int signum_;};// Listing 1 code/ch11int ACE_TMAIN (int, ACE_TCHAR *[]){ MySignalHandler h1 (SIGUSR1), h2 (SIGUSR1); ACE_Sig_Handlers handler; handler.register_handler (SIGUSR1, &h1); handler.register_handler (SIGUSR1, &h2); ACE_OS::kill (ACE_OS::getpid (), SIGUSR1); int time = 10; while ((time = ACE_OS::sleep (time)) == -1) { if (errno == EINTR) continue; else ACE_ERROR_RETURN ((LM_ERROR, ACE_TEXT ("%p\n"), ACE_TEXT ("sleep")), -1); } return 0;}// Listing 1
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?