Reformatted thread and static_instance.

BUG=
TEST=Trybots.

Review URL: https://webrtc-codereview.appspot.com/1006005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3324 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
phoglund@webrtc.org
2013-01-02 08:45:03 +00:00
parent a19d04e707
commit ec9c942e45
9 changed files with 534 additions and 589 deletions

View File

@ -8,57 +8,58 @@
* be found in the AUTHORS file in the root of the source tree.
*/
#ifndef WEBRTC_SYSTEM_WRAPPERS_SOURCE_THREAD_WINDOWS_H_
#define WEBRTC_SYSTEM_WRAPPERS_SOURCE_THREAD_WINDOWS_H_
#ifndef WEBRTC_SYSTEM_WRAPPERS_SOURCE_THREAD_WIN_H_
#define WEBRTC_SYSTEM_WRAPPERS_SOURCE_THREAD_WIN_H_
#include "thread_wrapper.h"
#include "event_wrapper.h"
#include "critical_section_wrapper.h"
#include "webrtc/system_wrappers/interface/thread_wrapper.h"
#include <windows.h>
#include "webrtc/system_wrappers/interface/critical_section_wrapper.h"
#include "webrtc/system_wrappers/interface/event_wrapper.h"
namespace webrtc {
class ThreadWindows : public ThreadWrapper
{
public:
ThreadWindows(ThreadRunFunction func, ThreadObj obj, ThreadPriority prio,
const char* threadName);
virtual ~ThreadWindows();
class ThreadWindows : public ThreadWrapper {
public:
ThreadWindows(ThreadRunFunction func, ThreadObj obj, ThreadPriority prio,
const char* thread_name);
virtual ~ThreadWindows();
virtual bool Start(unsigned int& id);
bool SetAffinity(const int* processorNumbers,
const unsigned int amountOfProcessors);
virtual bool Stop();
virtual void SetNotAlive();
virtual bool Start(unsigned int& id);
bool SetAffinity(const int* processor_numbers,
const unsigned int amount_of_processors);
virtual bool Stop();
virtual void SetNotAlive();
static unsigned int WINAPI StartThread(LPVOID lpParameter);
static unsigned int WINAPI StartThread(LPVOID lp_parameter);
protected:
virtual void Run();
protected:
virtual void Run();
private:
ThreadRunFunction _runFunction;
ThreadObj _obj;
private:
ThreadRunFunction run_function_;
ThreadObj obj_;
bool _alive;
bool _dead;
bool alive_;
bool dead_;
// TODO (hellner)
// _doNotCloseHandle member seem pretty redundant. Should be able to remove
// it. Basically it should be fine to reclaim the handle when calling stop
// and in the destructor.
bool _doNotCloseHandle;
ThreadPriority _prio;
EventWrapper* _event;
CriticalSectionWrapper* _critsectStop;
// TODO(hellner)
// do_not_close_handle_ member seem pretty redundant. Should be able to remove
// it. Basically it should be fine to reclaim the handle when calling stop
// and in the destructor.
bool do_not_close_handle_;
ThreadPriority prio_;
EventWrapper* event_;
CriticalSectionWrapper* critsect_stop_;
HANDLE _thread;
unsigned int _id;
char _name[kThreadMaxNameLength];
bool _setThreadName;
HANDLE thread_;
unsigned int id_;
char name_[kThreadMaxNameLength];
bool set_thread_name_;
};
} // namespace webrtc
#endif // WEBRTC_SYSTEM_WRAPPERS_SOURCE_THREAD_WINDOWS_H_
#endif // WEBRTC_SYSTEM_WRAPPERS_SOURCE_THREAD_WIN_H_