博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
windows系统调用 调度优先级
阅读量:6966 次
发布时间:2019-06-27

本文共 1596 字,大约阅读时间需要 5 分钟。

1 #include "iostream" 2 #include "windows.h" 3 using namespace std; 4  5 class CWorkerThread{ 6 public: 7     CWorkerThread(LPCTSTR m_szName):m_szName(m_szName),m_hThread(INVALID_HANDLE_VALUE){ 8         m_hThread=CreateThread( 9             NULL,10             0,11             ThreadProc,12             reinterpret_cast
(this),13 0,14 NULL15 );16 }17 18 virtual ~CWorkerThread(){CloseHandle(m_hThread);}19 20 virtual void WaitForCompletion(){21 WaitForSingleObject(m_hThread,INFINITE);22 }23 24 virtual void SetPriority(int nPriority){25 SetThreadPriority(m_hThread,nPriority); 26 }27 28 virtual void Suspend(){29 SuspendThread(m_hThread);30 }31 32 virtual void Resume(){33 ResumeThread(m_hThread);34 }35 36 protected:37 static DWORD WINAPI ThreadProc(LPVOID lpParam){38 CWorkerThread *pThis=39 reinterpret_cast
(lpParam);40 41 pThis->DoStuff();42 return (0);43 }44 45 virtual void DoStuff(){46 for(int n=0;n<100;n++){47 printf("Thread %s ID:%d,count %d\n",m_szName,GetCurrentThreadId(),n);48 }49 }50 51 protected:52 HANDLE m_hThread;53 LPCTSTR m_szName;54 };55 56 void main(){57 58 CWorkerThread wtB("B");59 CWorkerThread wtA("A");60 wtA.SetPriority(THREAD_PRIORITY_LOWEST);61 62 63 wtA.WaitForCompletion();64 wtB.WaitForCompletion();65 66 cout<<"Both threads complete."<

 

转载于:https://www.cnblogs.com/593213556wuyubao/p/3784470.html

你可能感兴趣的文章
【腾讯bugly干货分享】HTML 5 视频直播一站式扫盲
查看>>
https原理通俗了解
查看>>
iOS开发debug集锦
查看>>
go-fasthttp源码分析
查看>>
RaspberryPi学习之SD卡文件修改及备份
查看>>
我的友情链接
查看>>
Java版InfluxDB工具类
查看>>
Python os/shutil/path 模块
查看>>
python学习笔记操作mongodb(九)
查看>>
[转]在A*寻路中使用二叉堆
查看>>
【Cloud Foundry 应用开发大赛】“17轻松”文章采集应用
查看>>
第七节 泛型(Generics)
查看>>
union的内存分布
查看>>
自己的技术博客
查看>>
lamp 编译参数
查看>>
FastDFS之Binlog同步
查看>>
谷歌Quickoffice现免费面向所有用户
查看>>
我的友情链接
查看>>
Mvc Html.BeginForm 方式提交Form前验证
查看>>
初探KVM-第一个虚拟机
查看>>