社区
进程/线程/DLL
帖子详情
求一多线程问题
tb01412
2004-07-09 11:33:21
请问如何在VC中实现一个多线程的程序,以最简短代码示例一下,在此多谢了!
...全文
149
14
打赏
收藏
求一多线程问题
请问如何在VC中实现一个多线程的程序,以最简短代码示例一下,在此多谢了!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
14 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kuangjingbo
2004-08-11
打赏
举报
回复
createthread
oyljerry
2004-08-11
打赏
举报
回复
一个简单的例子:
本例中单独设置了一个线程监视当前时间,在Visual C++中线程的简单调用语句为:AfxBegin -Thread(ProcName, param, Priority),第一个参数是线程函数名,param是准备传送给线程的任意32位值,最后一个是线程的优先级(可用常量表示)。这里先定义一个线程函数:
UINT timeThreadProc(LPVOID pParam) //定义线程,必须照此格式
{
CTime gt; //定义时间变量
int hh,mm,ss; //为存储时间定义整型变量
do //判断时间的循环
{
gt=CTime::GetCurrentTime();
//提取当前时间
hh=gt.GetHour(); //分别提取时、分、秒 mm=gt.GetMinute();
ss=gt.GetSecond();
} while ((h!=hh) (m!=mm) (s!=ss));
//判断当前时间
flag=0; //置状态标志
ExitWindowsEx(EWX_SHUTDOWN,0);
//关闭计算机
return 0;
}
在上面这个函数中,第一行的格式不能改变,其中的h、m、s是三个全局变量,存储的是设定的时间(时、分、秒)值。通过循环判断,如果当前时间满足设定的条件,则调用MFC的函数ExitWindowsEx(UNIT uFlags, DWORD dwReserved)来关闭计算机。
Pandona
2004-08-11
打赏
举报
回复
huahao0672:
“CreateThread()函数有很多问题”,我不是很明白,请详细说明一下。
huahao0672
2004-08-11
打赏
举报
回复
樓上的各位大俠,都說的不錯,但是在建立一個線程的時候千萬不要用下面這個
函數 CreateThread()這個函數,這個函數在建立的過程當中,會存在很多的問題.
這點請大家一定要記住了.
如是是 C Runtime library 請用_beginthreadEX()
brainholmes
2004-07-14
打赏
举报
回复
HANDLE hThread;
DWORD dwThreadID;
hThread=::CreateThread(NULL,0,ThreadProc,0,0,&dwThreadID);
DWORD WINAPI ThreadProc(LPVOID pvparam)
{
return 0;
}
我不清楚AfsBeginThread 和他的区别
tb01412
2004-07-13
打赏
举报
回复
楼上的,你有QQ号吗?希望在QQ里请教你一些问题!我的QQ是382270255
ShaftWhy
2004-07-13
打赏
举报
回复
报的什么错误?
tb01412
2004-07-13
打赏
举报
回复
谢谢楼上所有的人,我现在所遇到的问题是:在一个按钮的点击事件中能调用,但我想在对话框生成时就启用一个线程,这时编译器会报出错误,这是为什么?
huahao0672
2004-07-12
打赏
举报
回复
建議你去看一下侯捷大師的<WIN32多線程程式設計>這本書
裏面對多線程有很詳細的描述.相信讀完以後,收穫不小
Flyingfoxoo
2004-07-11
打赏
举报
回复
我的vc很菜啊
vcforever
2004-07-11
打赏
举报
回复
创建工作者线程比较容易,工作者线程一般用来完成纯粹的计算工作,不涉及GUI !
首先定义一个线程函数,在该线程函数中完成一些后台操作
UINT MyThreadFunc(LPVOID lparam)
{
//线程要实现的功能;
return 0;
}
在主线程中,例如button的BN_CLICK消息响应函数中
AfxBeginThread(MyThreadFunc, this);//第二个参数视你要传递给线程的具体内容决定
这样你在点击按钮的时候就可以启动一个线程了!
lianglp
2004-07-11
打赏
举报
回复
DWORD WINAPI threadproc(LPARAM lParam)//这个就是你要执行的线程处理过程
{
...
return NULL ;
}
CreateThread(NULL,NULL,(LPTHREAD_START_ROUTINE)threadproc,NULL,NULL,NULL) ;
这样就可以创建你要的线程了。
pmwin
2004-07-10
打赏
举报
回复
用AfxBeginThread新建线程
comman_wang
2004-07-09
打赏
举报
回复
看看临界区、事件、信号量和互斥体的使用例程,这个网上很多的。
WPF
多线程
演示
WPF
多线程
演示
libevent
多线程
libevent
多线程
, 参考mariotcp 参考http://blog.csdn.net/i_am_jojo/article/details/7587838流程图
Android
多线程
文件夹下载及断点续传
Android实现网络
多线程
下载,断点续传,压缩包内有两个项目: downloadDemo:
多线程
下载 MulThreadDownloader:断点续传(网上别人的项目)
Android
多线程
断点续传下载+在线播放音乐
Android
多线程
断点续传下载+在线播放音乐,我想很多小白都想要。
Qt 一去丶二三里 Blog(二)
为方便大家的学习、交流,将博客导出为pdf,有兴趣的童鞋可自行下载!
进程/线程/DLL
15,473
社区成员
49,171
社区内容
发帖
与我相关
我的任务
进程/线程/DLL
VC/MFC 进程/线程/DLL
复制链接
扫一扫
分享
社区描述
VC/MFC 进程/线程/DLL
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章