ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:23.93KB ,
资源ID:22938946      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/22938946.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(线程包装类Word下载.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

线程包装类Word下载.docx

1、/线程池满JADE_THREAD_ERROR_STOP0x00000002/该线程以停止JADE_THREAD_ERROR_USED0x00000003/指定的线程被占用JADE_LOCAL_MODEL0x00000010/JADE_THREAD_CREATED0x00000004/线程已创建JADE_THREAD_FAIL0x00000005/失败JADE_THREAD_FALSE0x00000006/异常错误JADE_THREAD_KILLED0x00000007/已删除JADE_ALLOC_LOCAL0x00000008/TLS内存处理方式JADE_ALLOC_GLOBAL0x00000

2、009/全局内存分配方式JADE_FALSE/操作错误JADE_MANAGE_FILOJADE_SUCCEEDED(dwStatus)(DWORD)(dwStatus)=0)/*-功能说明:任务处理基类使用者,请从该类进行子类化的派生。每个抽象类必须实现TaskProc方法以便Jade_ThreadPool调用您所需要的处理过程。方法说明:TaskProc处理过程OtherProc保留处理过程参数:LPVOIDpParam目前为该任务类的this指针DWORDdwID该任务类所占用的线程ID-*/classJade_TaskBasepublicJade_TaskBase(void);virtu

3、alJade_TaskBase(void)public:TaskProc(LPVOIDpParam,DWORDdwID)=0;OtherProc(LPVOIDdwOther);JADE_THREAD_Hwindows.hJade_config_Thread_pool.h/*-功能描述:一个线程的抽象表现,实现:运行、停止、重起、建立,销毁、-*/Jade_ThreadByEventJade_ThreadByEvent();Jade_ThreadByEvent();enumThreadStatusTLS_RUN1,TLS_STOP,TLS_KILL;Create(DWORDdwStackSize

4、,DWORDdwReturn0,DWORDdwLevel0,Jade_TaskBase*pTaskNULL);voidSetTimeOut(DWORDdwTimeINFINITE);/是否需要?GetThreadRunTime(double&dwTime);/取得线程运行时间Run(Jade_TaskBase*pTask);Stop();Restart();Kill();CheckState(DWORDdwState);ResetTask(Jade_TaskBaseSetPriority(DWORDdwLevel);private:staticCALLBACKThreadProc(LPVOID

5、lpParam);FilterCode(DWORDdwErrCode,LPVOIDlpVoid);Abend(DWORDdwCode0);HANDLEm_hThread;/线程的实现描述m_hEvent3;/2-运行、1-停止、0-结束(线程状态)m_hWaitEvent2;/0-停止、1-结束(等待返回确认状态)*m_pTask;/所要执行的任务m_dwReturn;/该线程的返回值m_dwID;/线程IDm_dwState;/线程状态m_dwTimeOut;/线程执行超时m_dwLevel;/运行级别defined(_JADE_THREADPOOL_INLINE_)Jade_ThreadB

6、yEvent.inl/*_JADE_THREAD_INLINE_*/#endifstdafx.htime.hJade_ThreadByEvent.h!Jade_ThreadByEvent:Jade_ThreadByEvent():m_hThread(NULL),m_pTask(NULL),m_dwReturn(0),m_dwID(0),m_dwState(0),m_dwTimeOut(INFINITE)m_hEvent0CreateEvent(NULL,TRUE,FALSE,LocalThread_Run);m_hEvent1LocalThread_Stopm_hEvent2LocalThre

7、ad_Killm_hWaitEvent0LocalReturnStopm_hWaitEvent1KillJade_ThreadByEvent()/KillThreadEventfor(inti=0;i)/*-重新设置线程的任务任务体-*/charchCode64dwResultsprintf(chCode,ExceptCodeis%d,dwResult);OutputDebugString(chCode);JADE_THREAD_FALSE;dwTime)m_dwTimeOutdwTime;/*-线程实现体Jade_Thread指针WaitForMultipleObjects有检查顺序所以运行

8、状态要靠后,结束等待状态设置比较靠前-*/lpParam)Jade_ThreadByEvent*pThisstatic_cast(lpParam);pThis-hEvent3memcpy(hEvent,pThis-m_hEvent,sizeof(hEvent);dwStateintnOtherclock_ttStart=0,tFinishLOOP:WaitForMultipleObjects(3,hEvent,FALSE,pThis-m_dwTimeOut);switch(dwState)WAIT_OBJECT_0+2:/Runm_pTask-TaskProc(pThis-m_pTask,pThis-1:/StopSuspendThread(pThis-m_hThread);/由于是线程内停止所以因该只能被执行一次0:/KillTLS_KILL;SetEvent(pThis-m_hWaitEvent1)?m_dwReturn:WAIT_FAILED:

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1