打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
VC中创建线程的方法
创建一个线程的方法:
创建线程使用CreateThread
The CreateThread function creates a thread to execute within the address space of the calling process.

HANDLE CreateThread(
                                       LPSECURITY_ATTRIBUTES lpThreadAttributes,  

                                         //指向SECURITY_ATTRIBUTES结构体的指针。
                                        
                                        DWORD dwStackSize,   //指定初始提交栈的大小

                                         LPTHREAD_START_ROUTINE lpStartAddress,
                                        //由线程执行,表示线程的起始地址,指定线程入口函数,
                                       //该入口函数的参数类型以及返回类型要与ThreadProc()函数声明的类型要保持一致
                                        LPVOID lpParameter,   //指定一个单独的值传递给线程
                                        DWORD dwCreationFlags, //指定控件线程创建的附加标记
                                        LPDWORD lpThreadId );    //指向一个用来接收线程的标识符变量

vc终止线程有三种方法:   
   1.线程可以在自身内部调用AfxEndThread()来终止自身的运行   
    
   2.可以在线程的外部调用BOOL    TerminateThread(    HANDLE    hThread,    DWORD    dwExitCode    )来强行终止一个线程的运行,   
   然后调用CloseHandle()函数释放线程所占用的堆栈   

   TerminateThread会有资源泄漏,不要万不得已,不要用这个函数
     DWORD code;
   if(GetExitCodeThread(MonitorComm,&code))   //MonitorComm 你创建的线程句柄
    if(code==STILL_ACTIVE)
    {
      TerminateThread(MonitorComm,0);
      CloseHandle(MonitorComm);
    }

    这样就安全了

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
CloseHandle(),TerminateThread(),ExitThread()的区别
VC创建线程
MFC 线程的退出方法
VC多线程编程学习笔记(一)
如何避免使用CreateThread函数导致的内存泄露
VC中CWinThread类以及和createthread API的区别分析
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服