zoukankan      html  css  js  c++  java
  • MFC 线程启动、暂停、继续、终止

    CWinThread* p_myThread;//创建线程指针
    BOOL flag_myThread = FALSE;//是否终止
    
    //头文件中声明(放类内) static UINT MyThreadFunction(LPVOID pParam);//定义线程入口函数
    UINT CMFCApplication25Dlg::MyThreadFunction(LPVOID pParam) //线程入口函数,具体实现
    {
        CMFCApplication25Dlg* dlg = (CMFCApplication25Dlg*)pParam;
        for (int i = 0; i <= 100; i++)
        {
            if (flag_myThread) break;
    
            dlg->SetDlgItemInt(IDC_STATIC, i, false);
            Sleep(100);
        }
        p_myThread = NULL;//线程结束注销或线程不存在
        return 0;
    }
    void CMFCApplication25Dlg::OnBnClickedButton1()
    {
        // TODO:  在此添加控件通知处理程序代码
        if (p_myThread==NULL) //若无线程启动成功
        {    //创建并启动线程
            p_myThread = AfxBeginThread(MyThreadFunction, (LPVOID)this);//this赋给线程入口函数的参数pParam
            flag_myThread = FALSE;
        }
        else
        {
            AfxMessageBox(_T("线程已经启动"));
        }    
    }
    
    
    void CMFCApplication25Dlg::OnBnClickedButton2()
    {
        // TODO:  在此添加控件通知处理程序代码
        if (p_myThread == NULL)//若无线程启动成功
        {
            AfxMessageBox(_T("线程不存在"));
        }
        else
        {
            p_myThread->SuspendThread();//暂停、挂起
        }
    }
    
    
    void CMFCApplication25Dlg::OnBnClickedButton3()
    {
        // TODO:  在此添加控件通知处理程序代码
        if (p_myThread == NULL)//若无线程启动成功
        {
            AfxMessageBox(_T("线程不存在"));
        }
        else
        {
            p_myThread->ResumeThread();//继续
        }
    }
    
    
    void CMFCApplication25Dlg::OnBnClickedButton4()
    {
        // TODO:  在此添加控件通知处理程序代码
        if (p_myThread == NULL)//若无线程启动成功
        {
            AfxMessageBox(_T("线程不存在"));
        }
        else
        {
            flag_myThread = TRUE;//终止
        }
    }
  • 相关阅读:
    出队列操作
    出队列操作
    栈和队列7 数据结构和算法29
    KE上传图片
    asp.net常用快捷键
    基于jquery框架实现以下行的向上、向下和删除
    each的用法积累
    JTemplate使用2
    kindeditor API ,kindeditor使用手册,kindeditor函数,kindeditor使用,超级大收集(转载)
    线上帮助
  • 原文地址:https://www.cnblogs.com/xixixing/p/11949313.html
Copyright © 2011-2022 走看看