进程与线程的学习

进程

什么是进程:

进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位。进程是可与其他程序并发执行的程序,在一个数据集合上的运行过程。他是系统进行资源分配和调度的一个独立单位。

进程的几个概念

1结构特性

为了控制和管理进程,系统为每个进程设立一个**进程控制块\PCB

2动态性

进程的实质是程序的一次执行过程,进程是动态产生,动态消亡的,进程在其生命周期内,在三种基本状态(产生,执行,消亡)之间转换。

3异步性

由于进程间得相互制约,使进程具有执行得间断性,即进程按各自独立的,不可预知的速度向前推进

4并发性

任何进程都可以同其他进程一起向前推进。

5独立性

进程是一个能独立运行的基本单位,同时也是系统分配资源和调度的独立单位

线程

将进程分解为几个子任务(线程)

线程的定义

1. 线程是程序执行的**最小单位\,而进程是操作系统分配资源的最小单位;
2. 一个进程由一个或多个线程组成,线程是一个进程中代码的**不同执行路线\;
3. 进程之间相互独立,但同一进程下的**各个线程之间共享程序的内存空间(包括代码段,数据集,堆
等)及一些进程级的资源(如打开文件和信号等),某进程内的线程在其他进程不可见;
4. 调度和切换:线程上下文切换比进程**上下文切换要快得

并发和并行

并发;一个CPU,不是同时进行

并行;多个CPU,互相不干扰

线程和进程的区别

线程的切换方式

线程生命周期

线程创建

1继承Thread类

程序运行结果:

2实现Runnable接口

3 实现Callable接口

程序运行结果:

线程就绪

线程运行

一旦CPU分配了运行时间,就调用线程的run()方法

4线程阻塞(block)

(1) sleep(n)---申请运行(就绪)
(2) join()----加入
(3) yield()---放弃cpu时间片,重新竞争
(4) wait()---

5线程死亡

线程自然死亡

守护线程和用户线程

守护最后一个用户线程结束

用户线程

创建的线程

守护线程

线程三大特性

1原子性

即一个操作或多个操作妖魔全部执行并且执行过程中不被任何因素打断,要么就不执行。

2可见性

多个线程访问同一变量,一个线程修改后,其他线程立刻可见。

3有序性

有序性是指程序在执行的时候,程序的代码执行顺序和语句的顺序是一致的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值