CreateThread, AfxBeginThread,_beginthread, _beginthreadex的区别

(一)

1、CreateThread是系统创建线程的接口,而AfxBeginThread,_beginthread, _beginthreadex,而只是为了程序的要求,而做的封装与拓展。

2、在MFC中,最好用AfxBeginThread来创建,因为它返回的是CWinThread类,这个类可以用来响应消息,于是它既可以做工作线程,也可以做界面线程,所以,AfxBeginThread是MFC中最好的选择。

3、_beginthreadex是对_beginthread的扩展,并且对_beginthread中存在的bug进行修复。

4、_beginthreadex相对于CreateThread增加了:

  1、创建了一个_tiddata数据来

  2、释放 _tiddata

  3、增加了一个SEH(异常处理)

 

(二)

AfxBeginThread的线程函数声明:     UINT  _yourThreadFun(LPVOID   pParam)

CreateThread的线程函数声明:        DWORD  WINAPI  _yourThreadFun(LPVOID pParameter)

 

posted @ 2013-09-25 09:31  Fly Hawk  阅读(283)  评论(0编辑  收藏  举报