2019-11-24 14:20:08 +01:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
#include "CThread.h"
|
|
|
|
#include <wut_types.h>
|
2020-04-29 17:54:46 +02:00
|
|
|
#include <mutex>
|
2019-11-24 14:20:08 +01:00
|
|
|
|
|
|
|
class BackgroundThreadWrapper: public CThread {
|
|
|
|
public:
|
|
|
|
BackgroundThreadWrapper(int32_t priority);
|
|
|
|
virtual ~BackgroundThreadWrapper();
|
|
|
|
protected:
|
|
|
|
BOOL shouldExit() {
|
|
|
|
return (exitThread == 1);
|
|
|
|
}
|
|
|
|
|
|
|
|
void setThreadPriority(int32_t priority) {
|
|
|
|
this->setThreadPriority(priority);
|
|
|
|
}
|
2020-04-29 17:54:46 +02:00
|
|
|
std::recursive_mutex mutex;
|
2019-11-24 14:20:08 +01:00
|
|
|
private:
|
|
|
|
void executeThread();
|
|
|
|
|
|
|
|
/**
|
|
|
|
Called when a connection has be accepted.
|
|
|
|
**/
|
|
|
|
virtual BOOL whileLoop() = 0;
|
|
|
|
|
|
|
|
volatile int32_t exitThread = 0;
|
|
|
|
|
|
|
|
|
|
|
|
};
|