13 #pragma managed( push, off ) 68 if (
nullptr == pfnFunc ) {
79 m_hObject = ::CreateThread(
nullptr, 0, pfnFunc, lpParam, 0,
nullptr );
109 m_hObject = ::OpenThread( dwAccess,
false, dwThreadId );
133 if ( 0 == ::TerminateThread(
m_hObject, dwExitCode ) ) {
154 if ( 0 == ::GetExitCodeThread(
m_hObject, &dwExitCode ) ) {
174 if ( static_cast< DWORD >( -1 ) == ::SuspendThread(
m_hObject ) ) {
194 if ( static_cast< DWORD >( -1 ) == ::ResumeThread(
m_hObject ) ) {
208 #pragma managed( pop ) virtual void Close() noexcept
クローズ関数
virtual bool Release() noexcept override
リリース関数
virtual bool Suspend() noexcept
サスペンド関数
virtual bool Create(LPTHREAD_START_ROUTINE pfnFunc, LPVOID lpParam) noexcept
作成関数
virtual bool Resume() noexcept
リジューム関数
HANDLE m_hObject
オブジェクトハンドル
virtual ~CThread() noexcept
デストラクタ
CThread() noexcept
コンストラクタ
virtual DWORD GetExitCode() const noexcept
終了コード取得関数
virtual void Close() noexcept override
クローズ関数
virtual bool Open(DWORD dwThreadId, DWORD dwAccess=THREAD_ALL_ACCESS) noexcept
オープン関数
virtual DWORD GetThreadId() const noexcept
スレッドID取得関数
virtual bool Terminate(DWORD dwExitCode=0) noexcept
強制終了関数