JAVA进程与线程

随着越来越多的新技术出现,似乎越来越不需要了解软件的基础。

什么是进程什么是线程
进程是操作系统进行资源分配的最小单位,其中资源包括:CPU、内存空间、磁盘IO等,同一个进程中的多条线程共享该进程中的全部系统资源,二进程和线程之间是相互独立的。进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。

进程是程序在计算机上的一次执行活动。但你运行一个程序,你就启动了一个进程。显然,程序是死的、静态的,进程是活的、动态的。进程可以分为系统进程和用户进程。凡是 用于完成操作系统的各种功能的进程就是系统进程,他们处于运行状态下的操作系统本身,用户进程就是所有你启动的进程。

线程是CPU调度的最小单位,必须依赖于进程而存在
线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的、能独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),但是它可与同属一个进程的其他线程共享进程所拥有的全部资源。

线程无处不在

任何一个程序都必须要创建线程,特别是JAVA不管任何程序都必须启动一个main函数的主线程;javaweb开发中的定时任务、定时器、JSP和Servlet、异步消息处理机制,远程访问接口RMI等,任何一个监听事件,onclick的触发事件等都离不开线程和并发的只是。

猜你喜欢

转载自blog.csdn.net/ASAS1314/article/details/73835420