CreateThread()和AfxBeginThread()的区别???

doubletreeoflcl 2003-08-21 03:21:08
我的程序有一个主界面,主界面上有一个按钮,点击这个按钮会产生一个线程.我的目的是在产生这个线程后,主界面上的其他按钮也可以操作.但我在用CreateThread()时,却达不到这样的效果,结果是主界面仍然不能操作.但是用AfxBeginThread()就可以,不知道是为什么?请问用CreateThread()能达到这样的效果吗? 两者到底有何区别?????请大虾指导.在线等待.......
...全文
30 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ustclancelot 2003-08-21
  • 打赏
  • 举报
回复
AfxBeginThread 是 MFC 的成员,自动创建 CWinThread 对象并调用 API 函数 CreateThread()。
doubletreeoflcl 2003-08-21
  • 打赏
  • 举报
回复
我的调用方法是这样的:
1.用CreateThread的方法:
线程函数的声明: DWORD WINAPI MyThread();
调用CreateThread的方式:
hThread = (HANDLE)CreateThread( &sa,0,
(LPTHREAD_START_ROUTINE) MyThread,
NULL, 0, &dwThreadId);
2.用AfxBeginThread的方法:
线程函数的声明: UINT MyThread (LPVOID pParam);
调用CreateThread的方式: AfxBeginThread(MyThread,NULL);

不知以上的方法中CreateThread的调用有错误吗???
DDHuang 2003-08-21
  • 打赏
  • 举报
回复
我不知道有什么区别,不过用afxbeginthread能做到的createthread也能做到,应该是你调用方法不对
David_7678 2003-08-21
  • 打赏
  • 举报
回复
AfxBeginThread其实是调用的api
而CreateThread是c的函数

最大的区别是AfxBeginThread与os结合紧密,所以性能好些
而CreateThread是c的, 所以通用性好点

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧