29 Q_DISABLE_COPY(SignalHandler)
35 std::function<
void()> mController;
38 SERVICE_STATUS_HANDLE mServiceStatusHandle;
43 ~SignalHandler()
override;
45#if defined(Q_OS_UNIX) && !defined(Q_OS_ANDROID) && !defined(Q_OS_IOS)
48 QScopedPointer<QSocketNotifier> mSignalSocketNotifier;
49 static int cSignalSocketPair[2];
52 static void sigHandler(
int pSignal);
53#elif defined(Q_OS_WIN)
56 static BOOL WINAPI ctrlHandler(DWORD pCtrlType);
57 static VOID WINAPI serviceMain(DWORD pArgc, LPTSTR* pArgv);
58 static VOID WINAPI serviceCtrlHandler(DWORD pCtrlCode);
59 static void registerService();
60 void setServiceStatus(DWORD pCurrentState);
64 void onSignalSocketActivated();