原文:Java面试题:多线程交替打印字符串

这道题是字节的面试题,当场问我有点紧张没想出来,只答上来要交替阻塞,还是面试官提醒我用生产者消费者思路解决。 题目 有A类线程 个,任务是打印字符A。有B类线程 个,任务是打印字符B。现在异步启动这 个线程,问如何才能让他们交替打印AB字符 解题思路 设两个信号SemaphoreA和SemaphoreB,他们代表A类和B类的资源数且他们的上限各有一个。初始设SemaphoreA ,Semaphor ...

2020-07-08 10:15 0 576 推荐指数:

查看详情

两个线程交替打印字符串

每个对象都有一内置锁 wait方法 释放对象锁(不占对象锁) sleep方法不释放对象锁(占对象锁) 优秀写法 (下面写法可能有问题,synchronized (LOCK) 提到 while ...

Fri Apr 11 19:02:00 CST 2014 0 7375
使用多线程循环交替打印字符

使用Condition + Lock 进行实现 private static int count_print = 1; (1)此处只能用static,来实现每打印一个字符,下一个字符长度加一,static是使该变量只有一个副本,任何改变都是对这个副本的内容做操作(2)若是想实现每打印一组,下一 ...

Wed Jun 13 18:45:00 CST 2018 0 1096
java面试题多线程交替输出偶数和奇数

一个面试题:实现两个线程A,B交替输出偶数和奇数 问题:创建两个线程A和B,让他们交替打印0到100的所有整数,其中A线程打印偶数,B线程打印奇数 这个问题配合java多线程,很多种实现方式 在具体实现之前,首先介绍一下java并发编程中共享变量的可见性问题。 可见性问题: 在java ...

Mon Oct 26 01:16:00 CST 2020 0 727
多线程面试题之【三线程按顺序交替打印ABC的方法】

建立三个线程,线程名字分别为:A、B、C,要求三个线程分别打印自己的线程名字,但是要求三个线程同时运行,并且实现交替打印,即按照ABCABCABC的顺序打印打印10轮,打印完毕控制台输出字符串:"打印完毕" 方法之一:使用Condition等待唤醒机制,代码如下: ...

Mon May 20 00:42:00 CST 2019 0 2035
Java面试题字符串

  如果明天你要参加一场面试面试官有个题目是:说说String/StringBuffer/StringBuilder它们之间的区别?你会怎么回答呢?(脑补一下答案)今天,小编就来和大家详细聊聊字符串String/StringBuffer/StringBuilder,告诉你怎样完美的回答以上面试 ...

Tue Feb 13 17:20:00 CST 2018 0 1223
面试题-使用线程交替打印奇数偶数

这世上有三样东西是别人抢不走的:一是吃进胃里的食物,二是藏在心中的梦想,三是读进大脑的书 分析题目。需要使用两个线程交替打印奇偶数。 使用同步锁解决这个问题 使用信号量来实现交替打印 定义两个信号量,一个奇数 ...

Tue May 21 23:37:00 CST 2019 4 1246
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM