![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
多线程
文章平均质量分 80
暇光曙墨
物来顺应,未来不迎,当时不杂,既过不恋
~
展开
-
线程高频面试题整理
原子操作是指一个不受其他操作影响的操作任务单元。原子操作是在多线程环境下避免数据不一致必须的手段。int++并不是一个原子操作,所以当一个线程读取它的值并加1时,另外一个线程有可能会读到之前的值,这就会引发错误。为了解决这个问题,必须保证增加操作是原子的,在JDK1.5之前我们可以使用同步技术来做到这一点。到JDK1.5,java.util.concurrent.atomic包提供了int和long类型的封装类,它们可以自动的保证对于他们的操作是原子的并且不需要使用同步。原创 2022-11-04 12:46:13 · 564 阅读 · 0 评论 -
多线程经典案例(生产者--消费者)
多线程开发中有一个经典的操作案例,就是“生产者-消费者”案例,生产者不的生产产品,消费者不断地取走产品;此案例涉及线程同步、线程休眠、线程等待、线程唤起等操作以及之间是如何搭配使用的方法。示例讲解:本示例模拟中生产者由“厨师”担任,消费者由“顾客担任”,模拟做菜与上菜的一个简单操作。类之间的关系如图:初始代码块分解: Food类为食物类,内置了set(Food food)生产食物和get(Food food)消费取走食物方法,Food类有两个属性分别是Na...原创 2022-03-20 13:42:25 · 975 阅读 · 0 评论