进程与线程

Posted yuyu666

tags:

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

进程:同一个操作系统中执行的一个子程序,包含了三部分虚拟CPU、代码、数据。

多进程:同一个操作系统中执行的多个并行的子程序。可以提高cpu的使用率。

线程:在同一个进程当中执行的子程序流。

多线程:同一个进程当中并发执行的多个子程序流。可以提高cpu的使用率。

进程与线程的区别:

进程有独立的进程空间,进程中的数据存放空间(堆空间和栈空间)是独立的。

线程的堆空间是共享的,栈空间是独立的,线程消耗的资源也比进程小,相互之间可以影响的。

java中如何调进程:

调用本地程序的两个类:


    Runtime

    Runtime.getRuntime.exec(...);    //执行一个程序

其返回值就是Process类型


        Process
  • 注意:

只有运行状态的线程才有机会执行代码,主线程的中止不会影响其他的正在运行中的线程,主线程中止也就是main()方法退出了。只有进程中的所有线程都中止时,进程(JVM进程)才会退出,只要有线程没有中止,进程就不会退出。

操作系统决定线程是否有优先级,独占式的操作系统中系统会有优先级的概念,共享式的操作系统则不会有优先级的。

在线程的内部,程序依然顺序执行。

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

八.多进程与多线程

多线程编程

[转帖]Linux系统进程的知识总结,进程与线程之间的纠葛...

线程浅析

LINUX操作系统知识:进程与线程详解

Linux系统进程的知识总结,进程与线程之间的纠葛...