2017-09-05 03:29:40 +08:00
|
|
|
#ifndef ZM_ANALYSIS_THREAD_H
|
|
|
|
#define ZM_ANALYSIS_THREAD_H
|
|
|
|
|
|
|
|
#include "zm_thread.h"
|
|
|
|
#include <signal.h>
|
|
|
|
|
|
|
|
#include "zm_monitor.h"
|
|
|
|
|
|
|
|
class AnalysisThread : public Thread {
|
|
|
|
private:
|
|
|
|
bool terminate;
|
|
|
|
sigset_t block_set;
|
|
|
|
Monitor *monitor;
|
|
|
|
|
|
|
|
public:
|
2020-12-10 01:21:41 +08:00
|
|
|
explicit AnalysisThread(Monitor *);
|
2017-09-05 03:29:40 +08:00
|
|
|
~AnalysisThread();
|
|
|
|
int run();
|
|
|
|
|
|
|
|
void stop() {
|
|
|
|
terminate = true;
|
|
|
|
}
|
|
|
|
bool stopped() const {
|
2020-12-10 01:21:41 +08:00
|
|
|
return terminate;
|
2017-09-05 03:29:40 +08:00
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|