tommi@webrtc.org b952a90038 Remove an unused Shutdown method from the ThreadWrapper interface.
The method was flagged by Chrome engineers as dubious since it uses
TerminateThread.  As it turns out, we don't use this method anywhere,
so we can simply remove it! :)

BUG=1066
Review URL: https://webrtc-codereview.appspot.com/938012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3065 4adac7df-926f-26a2-2b94-8c16560cd09d
2012-11-08 13:40:59 +00:00

65 lines
1.9 KiB
C++

/*
* Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
*
* Use of this source code is governed by a BSD-style license
* that can be found in the LICENSE file in the root of the source
* tree. An additional intellectual property rights grant can be found
* in the file PATENTS. All contributing project authors may
* 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_
#include "thread_wrapper.h"
#include "event_wrapper.h"
#include "critical_section_wrapper.h"
#include <windows.h>
namespace webrtc {
class ThreadWindows : public ThreadWrapper
{
public:
ThreadWindows(ThreadRunFunction func, ThreadObj obj, ThreadPriority prio,
const char* threadName);
virtual ~ThreadWindows();
virtual bool Start(unsigned int& id);
bool SetAffinity(const int* processorNumbers,
const unsigned int amountOfProcessors);
virtual bool Stop();
virtual void SetNotAlive();
static unsigned int WINAPI StartThread(LPVOID lpParameter);
protected:
virtual void Run();
private:
ThreadRunFunction _runFunction;
ThreadObj _obj;
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;
HANDLE _thread;
unsigned int _id;
char _name[kThreadMaxNameLength];
bool _setThreadName;
};
} // namespace webrtc
#endif // WEBRTC_SYSTEM_WRAPPERS_SOURCE_THREAD_WINDOWS_H_