复习线程进程

Posted _xiaohaige

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了复习线程进程相关的知识,希望对你有一定的参考价值。

1.1、进程和进程之间是独立的,哪怕是父进程和子进程之间也是独立的。包括他们的内存也是独立的。

1.2、线程和线程之间是独立的:这个独立说的是他们的栈是独立的(数据独立)。

1.3、线程和进程之间是不独立:线程需要运行进程空间中的代码、进程需要线程来运行代码。二者缺一不可,缺了任何一个他们都会消亡。

1.4、所有的线程会在进程结束时消亡(不应该这样)、进程在无任何一个线程运行时消亡(这才是正确的设计)。

1.5、线程应该是自然结束的。不然的话会导致内核对象的泄漏。

1.6、某一根线程被强行关闭时,进程还存在的话会导致内存泄漏。

1.7、总而言之:我们不应该做任何强制关闭当前线程的行为。

1.8、但是在编程中我们可能会碰到需要关闭某一根线程的时候:

1.9、在线程自然退出的时候会做什么事情:调用使用过的对象的析构函数。

1.10、CreateProcess,是当前的一个线程来启动了一个进程。而新启动的这个进程是当前这个进程的一个子进程。

CreateProcess之后实用计数会为二,所以记得CloseHandle。

1.11、ShellExcute,是可以提权的启动一个进程。是用于需要更多权限的进程启动,而以这种方式进行提权是被逼无奈的一种方式。

以上是关于复习线程进程的主要内容,如果未能解决你的问题,请参考以下文章

复习多线程

多线程复习

JavaSE复习4

复习八(多线程)

复习多线程相关知识

复习多线程相关知识