2 jujiawu1024 jujiawu1024 于 2016.04.13 16:07 提问

MFC判断线程是否执行过,有没有更好的思路呢?

MFC判断线程是否执行过。我的思路是使用数组来记录,可是数组的长度是很难更改的,有没有更好的思路呢?

2个回答

caozhy
caozhy   Ds   Rxr 2016.04.13 16:18
已采纳

用stl vector集合来记录就是了。用push_back

Lc_BoYi
Lc_BoYi   2016.04.13 16:13

那不用数组用链表? 或者在主线程设置一个变量,附加线程运行的时候sendmessage改变变量,通过这个变量来判断线程是否执行过。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
C#判断线程池中所有的线程是否已经完成
其实很简单用ThreadPool.RegisterWaitForSingleObject方法注册一个定时检查线程池的方法,在检查线程的方法内调用ThreadPool.GetAvailableThreads与ThreadPool.GetMaxThreads并比较两个方法返回的值是不是相等,相等表示线池内所有的线程已经完成.//每秒检次一次线程池的状态RegisteredWaitHandle rh
MFC 判断线程是否结束
函数: GetExitCodeThread() 功能: 获取一个结束线程的返回值 函数原形: BOOL GetExitCodeThread( HANDLE hThread, LPDWORD lpExitCode); 参数: hThread 指向欲获取返回值的线程对象的句柄                lpExitCode 用于存储线程的返回值,若为STILL_ACTIVE
判断一个线程是否执行结束以及获取线程退出码
HANDLE g_hThread = NULL;   DWORD dw = WaitForSingleObject(g_hThread, 0);   if(dw == WAIT_TIMEOUT)    //线程正在运行 {     TerminateThread(g_hThread, dwExitCode);    //不建议强制结束       if(g_hThread !=
判断某个方法是否没执行
-
C#process判断线程是否执行完毕
如下使用: Process   proc   =   new   Process(); proc.StartInfo.FileName   =   "cmd "; proc.Start(); proc.WaitForExit(); 或如下使用: Pro
判断多线程是否全部执行完毕
在使用多线程的时候有时候我们会使用 java.util.concurrent.Executors的线程池,当多个线程异步执行的时候,我们往往不好判断是否线程池中所有的子线程都已经执行完毕,但有时候这种判断却很有用,例如我有个方法的功能是往一个文件异步地写入内容,我需要在所有的子线程写入完毕后在文件末尾写“---END---”及关闭文件流等,这个时候我就需要某个标志位可以告诉我是否线程池中所有的子线
如何判断对话框已经初始化
一种笨方法: 加个变量控制   另外的方法: 根据已有变量控制   若初始化中有创建非模态对话框   可以通过,判断非模态对话框句柄是否存在来判断,如下:   //初始化中 m_showImageDlg.Create(IDD_DIALOG_SHOW,t
MFC如何判断一个进程已经存在
通俗的讲,CreateMutex就是用来判定是否存在一个指定的进程。呵呵,这样就很好理解了。【MFC】判断一个指定的进程是否存在--CreateMutex() CreateMutex() 说明: 创建一个互斥体(MUTEX) 返回值: Long,如执行成功,就返回互斥体对象的句柄; 零表示出错。会设置GetLastError。即使返回的是一个有效句柄,但倘若指定的名字已经存在,GetL
如何判断一个线程是否正在执行
创建线程时     ...     thread1   =   new   MyThread(false);     thread1   ->   FreeOnTerminate   =   false;     //   不自动释放线程     thread1   ->   Resume();       //   开始执行线程       ...         在
Unity3d 关于多脚本执行的状态判断
今天做项目的时候,碰到一个脚本执行的先后问题;