摘要: windows操作系统中,创建的线程有以下4种终止方式1. 线程函数返回当线程函数返回时,该线程会被终止,始终应该采用该方式来结束线程的运行,因为这是确保所有线程资源被正确清除的唯一办法。如果线程按照该方式成功返回,则:1)线程函数中创建的所有C++对象均能通过他们的析构函数正确的被撤销2)操作系统将正确的释放线程运行栈所使用的内存3)系统将线程的退出代码(在线程的内核对象中维护)设置为线程函数的返回值4)系统将该线程内核对象的使用计数递减2.ExitThread函数可以调用该函数,强制终止线程的运行。该函数将导致操作系统清除该线程所使用的所有操作系统资源。但是,C++资源(如类对象)将不被撤 阅读全文
posted @ 2012-11-07 11:52 小 楼 一 夜 听 春 雨 阅读(9544) 评论(0) 推荐(0)
摘要: http://www.cnblogs.com/lgxqf/archive/2009/02/10/1387480.html在Win32 API中,创建线程的基本函数是CreateThread,而_beginthread(ex)是C++运行库的函数。为什么要有两个呢?因为C++运行库里面有一些函数使用了全局量,如果使用CreateThread的情况下使用这些C++运行库的函数,就会出现不安全的问题。而_beginthreadex为这些全局变量做了处理,使得每个线程都有一份独立的“全局”量。所以,如果你的编程只调用Win32 API/SDK,就放心用CreateThread;如果要用到C++运行时间 阅读全文
posted @ 2012-11-07 11:19 小 楼 一 夜 听 春 雨 阅读(423) 评论(0) 推荐(0)