进程与线程

Process ?

A process has a self-contained execution environment. A process generally has a complete, private set of basic run-time resources; in particular, each process has its own memory space.html

一个进程,拥有一个独用的的执行环境。一个进程一般包含一组完整的,私有的运行时资源。特别的,每一个进程拥有本身的内存空间。java

进程一般被看作一个程序或应用的代名词。其实,用户看到的单个应用,事实上多是一组协做的进程。程序员

为了促进进程间的通讯,大多数操做系统支持 Inter Process Communication (IPC) resources, 例如 pipes, sockets。IPC 不只用来在同一个系统上的进程间的通讯,也能够用在不一样系统上进程间通讯oracle

Thread ?

Threads are sometimes called lightweight processes. Both processes and threads provide an execution environment, but creating a new thread requires fewer resources than creating a new process.socket

线程,有时候称之为“轻量级进程”。线程和进程都提供单独的执行环境,但新建一个线程所需的资源要少于
新建一个进程所需的资源。ide

线程必定包含在进程中。每一个进程至少有一个线程。 ui

线程能够共享进程的资源,包括内存和打开的文件。这么作是能够更高效,但会存在一些问题.spa

在程序员的眼中,每个程序都是从一个主线程(main thread)开始,在这个线程上,能够建立更多的线程操作系统

区别 & 联系

  • 线程必定包含在进程中。每一个进程至少有一个线程。线程

  • 进程一般有一组完整的,私有的运行时资源。线程能够共享进程的资源。

  • 进程间经过 IPC 进行通讯。线程间经过共享资源进行通讯。

参考资料

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息