多线程编程例子
来源:互联网 发布:无服务架构 编程语言 编辑:程序博客网 时间:2024/05/01 18:20
刚刚测试通过的一个多线程例子, 做成功了,写在这里做个参考。
第一步:定义全局处理函数,该处理函数供线程调用,param是唯一的一个参数(类型LPVOID ,即可根据需要传值),全局参数一般在主文件的cpp的头部定义。
UINT TreadProc(LPVOID param);
第二步:编写该消息处理函数,这里面的param我传入的是一个进度条,以便进行显示
UINT TreadProc(LPVOID param)
{
CProgressCtrl* pro=(CProgressCtrl*)param;
for(int i=1;i<=100;i++){
Sleep(1000);
pro->SetPos(i);
}
return 0;
}
第三步:调用这个函数,我在按钮里调用,方法如下:
CProgressCtrl* progress_ctrl=(CProgressCtrl*)GetDlgItem(IDC_PROGRESS);
AfxBeginThread(TreadProc, progress_ctrl, THREAD_PRIORITY_NORMAL);//前两个参数分别是函数名以及我
//传入的控件的首地址
需要说明的是,这个TreadProc函数要在这段代码所在文件的头部声明一下,仍然是这样:UINT TreadProc(LPVOID param);
要停止该进程也很容易
首先定义一个标识:volatile int threadController;用在循环计算的时候判断是否要继续循环,即:
for(int i=1;i<=100;i++){
while(!threadController)
break;
Sleep(1000);
pro->SetPos(i);
}
在停止线程的按钮里将threadController赋值为0.
- 多线程编程例子
- linux 多线程编程例子
- Linux多线程编程例子
- 多线程编程的简单例子
- python多线程编程例子实验
- 基本多线程编程的一个例子
- vc++多线程编程的十个例子
- JAVA多线程编程详解-详细操作例子
- Java 多线程编程两个简单的例子
- VC++ 多线程编程,win32,MFC 例子
- python 多线程编程(一个经典例子)
- Java多线程编程--(5)Java多线程互斥小例子
- Java多线程编程--(5)Java多线程互斥小例子
- Linux多线程编程(三)互斥锁和信号量编程例子
- 多线程例子
- 多线程例子
- 多线程例子
- 多线程例子
- 掌握 Ajax,第 6 部分: 建立基于 DOM 的 Web 应用程序
- MYSQL增量备份
- C++类及其实例所占据空间(自己测试结果)
- 掌握 Ajax,第 7 部分: 在请求和响应中使用 XML(1)
- 自己动手做博客之日志管理-2.1 数据库类
- 多线程编程例子
- 解决两个窗体类似问题
- 掌握 Ajax,第 8 部分: 在请求和响应中使用 XML(2)
- embedded linux tips
- 掌握 Ajax,第 9 部分: 使用 Google Ajax Search API
- 取得随机字符串
- 掌握 Ajax,第 10 部分: 使用 JSON 进行数据传输
- MySQL 服务器性能调优 Making sure your MySQL server flies
- 掌握 Ajax,第 11 部分: 服务器端的 JSON