VirtThread.h revision baa3858d3f5d128a5c8466b700098109edcad5f2
1// VirtThread.h
2
3#ifndef __VIRTTHREAD_H
4#define __VIRTTHREAD_H
5
6#include "../../Windows/Synchronization.h"
7#include "../../Windows/Thread.h"
8
9struct CVirtThread
10{
11  NWindows::NSynchronization::CAutoResetEvent StartEvent;
12  NWindows::NSynchronization::CAutoResetEvent FinishedEvent;
13  NWindows::CThread Thread;
14  bool ExitEvent;
15
16  ~CVirtThread();
17  WRes Create();
18  void Start();
19  void WaitFinish() { FinishedEvent.Lock(); }
20  virtual void Execute() = 0;
21};
22
23#endif
24