有人说 那样会有资源没有释放 成了垃圾内存。但有人说 其实WINDOWS的保护模式会自动回收 不必担心。

解决方案 »

  1.   

    关键是有的时候,进程在终止前的工作就无法被完成。
    比如那个进程的main里有个局部变量,是个对象,该对象的析构函数最后会往日志文件里写数据。如果用TerminateProcess强行终止了它,那它的析构函数就不会被调用,最后也不会记录下这些数据信息了。
    因此让进程自己return来结束自己是最好的习惯。
      

  2.   

    直接TerminateProcess结束某个程序的进程在某个进程一直执行过程中进程中的内存泄露了,没有办法回收,但当这个进程结束时,系统会释放进程所战用的所有内存。(然而一些系统资源是不会因为进程的结束而自己释放的)。
      

  3.   

    会造成泄漏的。比如在一个类里面的析构函数中释放资源等,但是直接TerminateProcess后,根本没机会执行析构函数。