在windows开发中,我们有两种创建线程的方式:
第一种:Windows API CreateThread() 来创建线程;用 ExitThread() 来退出线程;
第二种:调用MSVC CRT的函数 _beginthread() 或 _beginthreadex() 来创建线程;用 CRT的 _endthread() 来退出线程。
而实际上,_beginthread() 的内部实现,也是通过调用 CreateThread() 来实现的创建线程。
这两种方式的区别在于,CreateThread() 在静态链接时,会无法释放 _tiddata 导致内存泄漏。