Add Signals class.

This commit is contained in:
XMRig 2019-02-15 14:21:40 +07:00
parent 70d6e0e62c
commit 4f188a2cd8
6 changed files with 201 additions and 42 deletions

View file

@ -27,9 +27,7 @@
#define XMRIG_APP_H
#include <uv.h>
#include "base/kernel/interfaces/ISignalListener.h"
#include "common/interfaces/IConsoleListener.h"
@ -43,9 +41,10 @@ namespace xmrig {
class Controller;
class Process;
class Signals;
class App : public IConsoleListener
class App : public IConsoleListener, public ISignalListener
{
public:
App(Process *process);
@ -55,21 +54,16 @@ public:
protected:
void onConsoleCommand(char command) override;
void onSignal(int signum) override;
private:
void background();
void close();
void release();
static void onSignal(uv_signal_t *handle, int signum);
static App *m_self;
Console *m_console;
Httpd *m_httpd;
uv_signal_t m_sigHUP;
uv_signal_t m_sigINT;
uv_signal_t m_sigTERM;
Signals *m_signals;
xmrig::Controller *m_controller;
};