话不多说直接上题,篇幅限制,文末有答案
![13467292-9b5782615c6eac84](https://i-blog.csdnimg.cn/blog_migrate/e7f1213d1a69125bb550444f9ac6e8bd.jpeg)
1.Java中守护线程和本地线程区别
2.线程与进程的区别
3.什么是多线程中的上下文切换
4.死锁与活锁的区别,死锁与饥饿的区别
5.Java中用到的线程调度算法是什么
6.什么是线程组,为什么在Java中不推荐使用
7.为什么使用Executor框架
8.在Java中Executor和Executors的区别
9.什么是原子操作,在Java Concurrency API中有哪些原子类(atomic classes)
10.Java Concurrency API中的Lock接口(Lock interface)是什么,对比同步它有什么优势
Lock接口比同步方法和同步块提供了更具扩展性的锁操作。
11.什么是Executors框架
12.什么是阻塞队列,阻塞队列的实现原理是什么,如何使用阻塞队列来实现生产者-消费者模型
13.什么是Callable和Future
14.什么是FutureTask,使用ExecutorService启动任务
15.什么是并发容器的实现
16.多线程同步和互斥有几种实现方法,都是什么
17.什么是竞争条件?你怎样发现和解决竞争
18.如何使用thread dump,如何分析Thread dump
19.为什么我们调用start()方法时会执行run()方法,为什么我们不能直接调用run()方法
20.Java中你怎样唤醒一个阻塞的线程
21.在Java中CycliBarriar和CountdownLatch有什么区别
22.什么是不可变对象,它对写并发应用有什么帮助
23.Java中用到的线程调度算法是什么
24.什么是线程组,为什么在Java中不推荐使用
25.为什么使用Executor框架比使用应用创建和管理线程好
26.Java中有几种方法可以实现一个线程
27.如何停止一个正在运行的线程
28.notify()和notifyAll()有什么区别
29.什么是Daemon线程,它有什么意义
30.Java如何实现多线程之间的通讯和协作
31.什么是可重入锁(ReentrantLock)
32.当一个线程进入某个对象的一个synchronized的实例方法后,其它线程是否可进入此对象的其它方法
33.乐观锁和悲观锁的理解及如何实现,有哪些实现方式
34.SynchronizedMap和ConcurrentHashMap有什么区别
35.CopyOnWriteArrayList可以用于什么应用场景
36.什么叫线程安全,servlet是线程安全吗
37.volatile有什么用,能否用一句话说明下volatile的应用场景
38.为什么代码会重排序
39.在java中wait和sleep方法的不同
40.一个线程运行时发生异常会怎样
41.如何在两个线程间共享数据
42.Java中notify 和 notifyAll有什么区别
43.为什么wait, notify 和 notifyAll这些方法不在thread类里面
44.什么是ThreadLocal变量
45.Java中interrupted 和 isInterrupted方法的区别
46.为什么wait和notify方法要在同步块中调用
47.为什么你应该在循环中检查等待条件
48.Java中的同步集合与并发集合有什么区别
49.什么是线程池,为什么要使用它
50.怎么检测一个线程是否拥有锁
51.你如何在Java中获取线程堆栈
52.JVM中哪个参数是用来控制线程的栈堆栈小的
53.Thread类中的yield方法有什么作用
54.Java中ConcurrentHashMap的并发度是什么
55.Java中Semaphore是什么
56.Java线程池中submit() 和 execute()方法有什么区别
57.什么是阻塞式方法
58.Java中的ReadWriteLock是什么
59.volatile 变量和 atomic 变量有什么不同
60.可以直接调用Thread类的run ()方法么
61.如何让正在运行的线程暂停一段时间
62.你对线程优先级的理解是什么
63.什么是线程调度器(Thread Scheduler)和时间分片(Time Slicing )
64.你如何确保main()方法所在的线程是Java 程序最后结束的线程
65.线程之间是如何通信的
66.为什么线程通信的方法wait(), notify()和notifyAll()被定义在Object 类里
67.为什么wait(), notify()和notifyAll ()必须在同步方法或者同步块中被调用
68.为什么Thread类的sleep()和yield ()方法是静态的
69.如何确保线程安全
70.同步方法和同步块,哪个是更好的选择
71.如何创建守护线程
72.什么是Java Timer 类,如何创建一个有特定时间间隔的任务
答案获取方式
加群即可获取 群号:923116658
点击链接加入群聊【Java架构解析】:https://jq.qq.com/?_wv=1027&k=5e1QsXb
群内还有更多Java学习资料,PDF电子书籍,相关学习视频!