【多线程】两个线程轮流打印数字1-100,一个打奇数一个打偶数,顺序打印,在今天的美团二面中,遇到了这个问题,一时间只想起来了解法,手写没有写出来利用volatile的可见性
使用NSLock实现 NSLock *lock = [[NSLock alloc] init]; __block int number = 0; dispatch_async(queue1, ^{ while (number < 100) { [lock lock]; if (number%2 == 0) { number++; NSLog(@"奇数---%d",number); } [lock unlock]; }; }); dispatch_async(queue2, ^{ while (number...
*一、 两个线程交替打印1-100的整数 * * 题目说明 * * 两个线程交替打印1-100的整数,一个打印奇数,一个打印偶数,要求输出结果有序 * * * */ */ public class NumTest extends Thread{ //是否现在先运行 private boolean runNow; private Object lock; private volatile int num; public NumTest(boolean...