mirror of
https://github.com/beefytech/Beef.git
synced 2025-06-10 12:32:20 +02:00
Initial checkin
This commit is contained in:
parent
c74712dad9
commit
078564ac9e
3242 changed files with 1616395 additions and 0 deletions
37
BeefySysLib/util/WorkThread.h
Normal file
37
BeefySysLib/util/WorkThread.h
Normal file
|
@ -0,0 +1,37 @@
|
|||
#pragma once
|
||||
|
||||
#include "../Common.h"
|
||||
|
||||
NS_BF_BEGIN
|
||||
|
||||
class WorkThread
|
||||
{
|
||||
public:
|
||||
BfpThread* mThread;
|
||||
|
||||
public:
|
||||
WorkThread();
|
||||
virtual ~WorkThread();
|
||||
|
||||
virtual void Start();
|
||||
virtual void Stop();
|
||||
virtual void WaitForFinish();
|
||||
virtual bool WaitForFinish(int waitMS);
|
||||
|
||||
virtual void Run() = 0;
|
||||
};
|
||||
|
||||
class WorkThreadFunc : public WorkThread
|
||||
{
|
||||
public:
|
||||
void (*mFunc)(void*);
|
||||
void* mParam;
|
||||
|
||||
public:
|
||||
// Note: this startProc signature does not match BfpThreadStartProc -- here we abstract out the calling convention to be default
|
||||
// on all platforms (cdecl)
|
||||
void Start(void (*func)(void*), void* param);
|
||||
virtual void Run() override;
|
||||
};
|
||||
|
||||
NS_BF_END
|
Loading…
Add table
Add a link
Reference in a new issue