线程(下)

目录

多线程的概念

线程同步

Lock

死锁

线程通信

新增创建线程方式


多线程的概念

同时执行多个任务

快 cpu利用率

线程之间对共享资源的访问会互相影响

并发 同一个时间段内依次执行 一个一个来

并行 多人做不同的事

线程同步

多线程同步:即多个线程同时读取同一份共享资源时,可能会引起冲突

解决方法:排队加锁

变成一个一个解决 而不是同步解决

那个线程获取到了这把锁 才有权利访问该共享资源

synchronized(锁对象)关键字 (修饰一段代码块 或者 方法)

修饰方法时 锁对象是this.

锁对象:多个线程对应的是同一个对象,用来记录有没有对象进入到代码块中

两个线程对一个任务进行访问 this 指的是 这一个任务

Lock

juc(并发)

ReentrantLock显示加锁 释放锁

死锁

多个线程分别占用对方需要的同步对象不放手

也不会报错提示 相互等待对方释放锁

线程通信

wait()后锁会被释放

notify() 唤醒线程

来自Object类中的方法

交替线程执行任务

新增创建线程方式

Runable不能放回结果 异常只能自己处理

新的方式

Callable接口

可以返回结果 和泛型

FutureTask

new Thread(futuretask)

FUtureTask.get() 得到返回结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值