![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java_高并发编程
可乐鸡翅-09
这个作者很懒,什么都没留下…
展开
-
Java 高并发编程 -死锁-生产者消费者模式
线程同步:就是在执行代码的时候,同一个资源,被多个线程访问,此时协调这多个线程得访问就是线程同步。 解决比较简单的一种方法是,实用synchronized 同步锁,让下一个线程等待上一个线程执行结束。然后执行,在上synchronized锁得时候,需要注意,这把锁的粒度。 在上synchronized锁得时候经常会碰见的一个问题是,『死锁』 前提:俩个或以上的线程 线程A,整个操作过程中锁...转载 2019-03-09 11:38:52 · 189 阅读 · 0 评论 -
Java 高并发编程 一道多线程 面试题目
实现一个容器,提供两个方法 add, size 写俩个线程,线程1添加10个元素道容器中,线程2实现监控元素得个数,当个数到5的时候,线程2给出提示并结束。 因为涉及到两个线程访问同一个变量,所以应该是变量共享的,会使用到volatile或者synchronized,(只涉及到一个线程去修改资源,另外一个线程去访问,所以这里同步方法可能不大适合) 需要另外一个线程去轮循容器是否已经有5个元...转载 2019-03-09 12:55:23 · 146 阅读 · 0 评论 -
Java 高并发编程 重入锁 && 面试题
public class ReentrantLock5 extends Thread{ private static Lock lock = new ReentrantLock(true); // true 获得公平锁 @Override public void run() { for (int i = 0; i < 10; i++) { ...原创 2019-03-10 10:53:32 · 195 阅读 · 0 评论 -
Java-多线程-基础 - && synchronized && volatile
public class T implements Runnable { private int cnt = 10; @Override public void run() { cnt--; System.out.println(Thread.currentThread().getName() + " cnt = " + cnt); ...原创 2019-03-08 18:38:20 · 71 阅读 · 0 评论