求一个windows下的多线程的例子,不要linux下的!
1. 建立一个基于对话框的工程MultiThread1,在对话框IDD_MULTITHREAD1_DIALOG中加入两个按钮和一个编
辑框,两个按钮的ID分别是IDC_START,IDC_STOP ,标题分别为“启动”,“停止”,IDC_STOP的属性选中
Disabled;编辑框的ID为IDC_TIME ,属性选中Read-only;
2. 在MultiThread1Dlg.h文件中添加线程函数声明:
void ThreadFunc();
注意,线程函数的声明应在类CMultiThread1Dlg的外部。 在类CMultiThread1Dlg内部添加protected型变量:
HANDLE hThread;
DWORD ThreadID;
分别代表线程的句柄和ID。
3. 在MultiThread1Dlg.cpp文件中添加全局变量m_bRun :BOOL m_bRun;
m_bRun 代表线程是否正在运行。
编写线程函数:
void ThreadFunc()
{
CTime time;
CString strTime;
m_bRun=TRUE;
while(m_bRun)
{
time=CTime::GetCurrentTime();
strTime=time.Format("%H:%M:%S");
::SetDlgItemText(AfxGetMainWnd()->m_hWnd,IDC_TIME,strTime);
Sleep(1000);
}
}
该线程函数没有参数,也不返回函数值。只要m_bRun为TRUE,线程一直运行。
双击IDC_START按钮,完成该按钮的消息函数:
void CMultiThread1Dlg::OnStart()
{
// TODO: Add your control notification handler code here
hThread=CreateThread(NULL,
0,
(LPTHREAD_START_ROUTINE)ThreadFunc,
NULL,
0,
&ThreadID);
GetDlgItem(IDC_START)->EnableWindow(FALSE);
GetDlgItem(IDC_STOP)->EnableWindow(TRUE);
}
双击IDC_STOP按钮,完成该按钮的消息函数:
void CMultiThread1Dlg::OnStop()
{
// TODO: Add your control notification handler code here
m_bRun=FALSE;
GetDlgItem(IDC_START)->EnableWindow(TRUE);
GetDlgItem(IDC_STOP)->EnableWindow(FALSE);
}
-
佚名2024-06-04 21:29:33
问怎么起Windows系统和Linux系统的目录名字?
答系统鉙的名字不能取,其他的随便,文件和文件夹也不能包含以下字符:井号 (#);百分号 (%);“&”;星号 (*);竖线 (|);反斜杠 (\);冒号(...
-
佚名2024-06-04 09:16:17
问c语言中怎样创建多线程。最好有一个例子,谢谢!!
答/*这是我写的最简单的多线程程序,看懂不?*/#include <windows.h>#include <stdio.h>//#include &l...
-
佚名2024-06-04 08:00:00
问linux如何查看一个进程下有哪些线程 求具体例子
答对于Linux,其实他是不存在线程这一说的,只有进程,如果非要说线程的话 ,你可以pstree -c|grep 你想要的进程的线程比如nginx的:ps -ef...
-
佚名2024-06-04 08:00:00
问求一个C#使用Queue的一个生产者多个消费者(多线程)的示例,谢谢!
答你看看,闲着瞎写的~~兄弟都下了我的源码,不给点意见或者加分谁不过去吧
-
佚名2024-06-04 08:00:00
问c#多线程访问数据库实例
答给你个思路吧。你先用多线程输出1和2,一个线程输出1,一个线程输出2。当你能很熟练控制输出1和2的位置。那么多线程访问数据库就很简单了。因为你不同线程调用不同的...
-
佚名2024-06-04 08:00:00
问linux线程同步和进程同步的区别
答(1)管道(pipe)和有名管道(FIFO) (2)信号(signal) (3)消息队列 (4)共享内存 (5)信号量 (6)套接字(socket)
-
佚名2024-06-04 08:00:00
问linux的线程同步方式有哪些
答三种同步方式:1、互斥锁(mutex)、2、条件同步(cond)、3、信号量(semphore).如果还想深入:可以参考http://blog.csdn.net...
-
佚名2024-06-04 08:00:00
问请问linux下C编程多线程同步和异步的区别,如何能实现程序的同步和异步编程
答同步和异步的区别:1、同步就是说多个任务之间是有先后关系的,一个任务需要等待另一个任务执行完毕才能继续执行。2、异步就是说多个任务之间没有先后关系,不需要相互等...
-
佚名2024-06-04 08:00:00
问学习LINUX下的网络编程 必看什么书
答如果你想精通,那么就按照如下顺序:1:首先看<Unix环境高级编程>,大概把Linux编程这块了解了;2:然后看<tcp/ip 详解>这本书有点厚,...
-
佚名2024-06-04 08:00:00
问可以写议论文的关于克服困难的名人例子,每个事例简单概括一下,不要超过200字,例子不要太俗,例如海
答议论文是以议论为主要表达方式,通过摆事实,讲道理,直接表达作者的观点和主张的常用文体。它不同于记叙文以形象生动的记叙来间接地表达作者的思想感情,也不同于说明文侧...
风水
起名
网名
- 1 网名王源
- 2 却金缺水的网名
- 3 女生网名艺术
- 4 却败给感情网名6字
- 5 右手幸福情侣网名
- 6 家长群你昵称是什么
- 7 qq昵称闺蜜唯美小清新简短
- 8 个性情侣昵称英文版2个字
- 9 小学生好听的微信昵称字少点
- 10 好友昵称显示警报警报什么意思
说说
- 1 有男朋友个性签名
- 2 漂流瓶个性签名
- 3 qq个性签名潮2015
- 4 梅西qq个性签名
- 5 有关倔强的说说
- 6 宣传纹绣的说说
- 7 大家都说说自己的理想把
- 8 感冒上火嘴巴疼 头疼的说说
- 9 见一面很奢侈的说说
- 10 对人友好的说说