摘要:
线程池概念和原理 我们使用线程的时候去创建一个线程,这样实现起来非常简便 但是出现了一个问题:如果并发的线程数量很多 并且每个线程都是执行一个时间很多的任务就结束了 这样频繁创建线程就会大大降低洗的效率 因为频繁创建线程和销毁线程需要时间 而线程池就可以解决这个问题 线程池:其实就是一个容纳多个线程 阅读全文
posted @ 2022-07-12 15:05
baimingze
阅读(81)
评论(0)
推荐(0)
摘要:
等待唤醒案例 消费者和生产者 需求 包子铺线程生产包子 吃货线程消费包子 当包子没有时 吃货线程等待 包子铺线程生产包子 并通知吃货线程 因为已经由包子了 那么包子铺进入等待状态 接下来 吃货线程能否进一步执行则取决于锁的获取情况 如果吃货获取到锁 那么就执行吃包子动作 包子吃完 并通知包子铺 吃货 阅读全文
posted @ 2022-07-12 14:26
baimingze
阅读(42)
评论(0)
推荐(0)
摘要:
线程通讯 概念:多个线程在处理同一个资源 但是处理的动作 (线程的任务)却不相同 比如:线程A用来生产包装的 线程B用来吃包子的 包子可以理解为同一资源 线程A于线程B处理的动作 一个是生产 一个是消费 那么线程A与线程B之间就存在线程通信问题 多个线程并发执行时 在默认情况下CPU是随机切换线程的 阅读全文
posted @ 2022-07-12 11:57
baimingze
阅读(79)
评论(0)
推荐(0)
摘要:
等待唤醒 Wating状态在API中介绍为:一个正在无限期等待另一个线程执行一个特别的(唤醒)动作的线程处于这一状态 做一个案例来演示 案例分析 创建一个顾客线程(消费者):告知老板要的包子的种类和数量 调用wait方法 放弃cpu的执行 进入到WAITING状态(无限等待) 创建一个老板线程(生产 阅读全文
posted @ 2022-07-12 11:24
baimingze
阅读(30)
评论(0)
推荐(0)
摘要:
lock锁 lock机制提供了比synchronized代码块和synchronized方法更广泛的锁定操作 同步代码块/同步方法具有的功能lock都有 除此之外更强大 更体面面向对象 lock隶属于java.util.concurrent.locks包下 lock锁也称为同步锁 加锁与释放锁方法化 阅读全文
posted @ 2022-07-12 10:54
baimingze
阅读(29)
评论(0)
推荐(0)

浙公网安备 33010602011771号