天天看点

Win32多线程之主线程

主线程:

   程序启动后就执行的那个线程称为主线程(primary thread)。主线程有两个特点:

     第一,它不许负责GUI(Graphic User Interface)程序中的主消息循环;

     第二,这一线程结束(不论是因为返回或因为调用了ExitThread())会使得程序中的所有线程都被迫结束。程序也因此而结束,

其它线程没有机会做清理工作。

   这是C runtime library 造成这样的结果,那是由于“当main()返回因而结束主线程”时,它们当时的行为所致。

  请记住一点,在main()或者WinMain()结束(返回,returned)之前,总是先等待所有的线程都结束。

   在主线程中调用ExitThread(),将会导致主线程结束而“worker线程”继续存在。然而这么做会跳过runtime library中的清理(cleanup)函数,因而没有将已开启的文件清理掉,我不建议你这么做。

继续阅读