这道题是字节的面试题,当场问我有点紧张没想出来,只答上来要交替阻塞,还是面试官提醒我用生产者消费者思路解决。 题目 有A类线程50个,任务是打印字符A。有B类线程50个,任务是打印字符B。现在异步启动这100个线程,问如何才能让他们交替打印AB字符? 解题思路 设两个信号 ...
使用Condition Lock进行实现 private static int count print 此处只能用static,来实现每打印一个字符,下一个字符长度加一,static是使该变量只有一个副本,任何改变都是对这个副本的内容做操作 若是想实现每打印一组,下一组字符每个字符长度加一,就不使用static,因为三个线程,有三个线程实例即ThreadTest实例,若不设置成静态,那么每次改变的 ...
2018-06-13 10:45 0 1096 推荐指数:
这道题是字节的面试题,当场问我有点紧张没想出来,只答上来要交替阻塞,还是面试官提醒我用生产者消费者思路解决。 题目 有A类线程50个,任务是打印字符A。有B类线程50个,任务是打印字符B。现在异步启动这100个线程,问如何才能让他们交替打印AB字符? 解题思路 设两个信号 ...
python条件变量知识参考:https://www.cnblogs.com/holbrook/archive/2012/03/13/2394811.html ...
每个对象都有一内置锁 wait方法 释放对象锁(不占对象锁) sleep方法不释放对象锁(占对象锁) 优秀写法 (下面写法可能有问题,synchronized (LOCK) 提到 while ...
...
两个线程交替打印 三个线程交替打印 ...
场景一 在我们面试中经常会有这么一个场景,就是我们用线程A输出“A”字符,有线程B输出“B”字符,交替进行,要求A线程执行完任务输出:“A线程打印完了”,B线程执行完任务输入:“B线程打印完了”,最后有主线程输出一句话“我打印完了”! 当你看到这个场景时,有点多线程经验的人肯定会感觉很容易 ...
1. 要打印的资源 2. 打印奇数的线程 3. 打印偶数的线程 4. 主函数 5. 运行结果 ...
参考https://blog.csdn.net/xiaokang123456kao/article/details/77331878 一、题目描述 建立三个线程A、B、C,A线程打印10次字母A,B线程打印10次字母B,C线程打印10次字母C,但是要求三个线程同时运行,并且实现交替打印,即按 ...