摘要:
import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; /** * 同一个类中的2个方法都加了同步锁,多个线程能同时访问同一个类中的两个方法吗? * 这个问题需要考虑到Lock与 阅读全文
摘要:
public class ThreadCommunication { /** * 三个线程a、b、c并发运行,b,c需要a线程的数据怎么实现 * * 根据问题的描述,通过三个线程,ThreadA ThreadB ThreadC * ThreadA用于初始化数据num,只有num初始化完成之后再让Th 阅读全文
摘要:
import java.util.concurrent.Semaphore; /** * 如何控制某个方法允许并发访问线程的个数 * permits the initial number of permits available. This value may be negative, * in w 阅读全文
摘要:
class ConcurrentThread { /** * 分析线程并发访问代码解释原因 * volatile关键字: * 1):保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的 * 2):禁止进行指令重排序 * volatile本质是告诉 阅读全文
摘要:
import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.concurrent.*; public class ServalMethod { /** * 有返回值的线程 */ 阅读全文
摘要:
1、启动一个线程是调用run()方法还是start()方法? 启动一个线程是调用start()方法,是线程所代表的虚拟处理机处于可运行状态,这意味着它可以由JVM调度并执行,这并不意味着线程就会立即执行 2、请说出同步线程及线程调度相关的方法? wait():是一个线程等待(阻塞bolcked)状态 阅读全文