Windows API一日一练(50)SuspendThread和ResumeThread函数

Post date: 2012/3/27 上午 07:34:14

分类: Direct3D2007-10-15 20:59 4086人阅读 评论(0) 收藏 举报

操作系统对线程有几种状态的变化:执行,挂起和恢复执行。

当线程做完任务或者现在想暂停线程运行,就需要使用SuspendThread来暂停线程的执行,当然恢复线程的执行就是使用ResumeThread函数了。这两个函数使用很简单的,下面就来看看例子是怎么样使用的。

函数SuspendThread和ResumeThread声明如下:

WINBASEAPI

DWORD

WINAPI

SuspendThread(

__in HANDLE hThread

);

WINBASEAPI

DWORD

WINAPI

ResumeThread(

__in HANDLE hThread

);

hThread是线程的句柄。

调用函数的例子如下:

#001 //线程的暂停和恢复。

#002 //蔡军生 2007/10/15 QQ:9073204 深圳

#003 void ThreadSuspendResume(void)

#004 {

#005 ::SuspendThread(m_hThread);

#006

#007 Sleep(10);

#008 ::ResumeThread(m_hThread);

#009 }

#010

第5行是暂停线程执行。

第8行是继续线程执行