线程 进程 线程池
进程
狭义上讲:正在执行的程序,由线程组成,可包含多个线程在运行。
广义上讲:进程是一个具有一定独立功能的程序有关于某个数据集合的一次运行的活动。它可以申请或者拥有系统资源,是一个动态的概念。
进程的概念主要两点:1.进程是一个实体,每一个进程都有自己的地址空间,一般情况下包括文本区域,数据区和堆栈。
线程
- 线程
CPU的CS:IP跑JAVA程序,程序在用户态创建一个线程,线程指向内核态创建一个task-struct
java执行的最小单位为线程,线程共享内存
为进程中执行的程序片段。
一个线程由线程ID,当前指令针,寄存器和堆栈组成,另外线程是进程的实体,是被系统独立调试的分派的基本单元。
线程是程序中一个单一的顺序控制流程。进程内一个相对独立的、可调度的执行单元,是系统独立调度和分派CPU的基本单位指运行中的程序的调度单位。在单个程序中同时运行多个线程完成不同的工作,称为多线程。
进程与线程的区别
线程之间用的是进程里给他分配的内存
进程的空间是独立的,进程之间是没有办法通过内存的方式互相通信的,进程之间需要外设进行通信(序列化与反序列化)
-
线程中有两种启动方法:
(1)一种是继承Thread类,重写run方法
(2) 另一种是实