基本信息
源码名称:Java并发编程面试题合集-已转档.pdf
源码大小:2.80M
文件格式:.pdf
开发语言:Java
更新时间:2021-04-20
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 2 元 
   源码介绍


目录
1、在 java 中守护线程和本地线程区别?............................................................ 4
2、线程与进程的区别? ........................................................................................ 4
3、什么是多线程中的上下文切换?..................................................................... 4
4、死锁与活锁的区别,死锁与饥饿的区别?..................................................... 4
6、什么是线程组,为什么在 Java 中不推荐使用?................................................ 5
7、为什么使用 Executor 框架?............................................................................... 5
8、在 Java 中 Executor 和 Executors 的区别? ......................................................... 5
9、什么是原子操作?在 Java Concurrency API 中有哪些原子类(atomic classes)?
.................................................................................................................................. 6
10、Java Concurrency API 中的 Lock 接口(Lock interface)是什么?对比同步它有什
么优势?................................................................................................................... 6
11、什么是 Executors 框架?................................................................................... 7
12、什么是阻塞队列?阻塞队列的实现原理是什................................................... 7
13、什么是 Callable 和 Future?.............................................................................. 8
14、什么是 FutureTask?使用 ExecutorService 启动任务。....................................... 8
15、什么是并发容器的实现?................................................................................. 8
16、多线程同步和互斥有几种实现方法,都是什么?............................................ 9
17、什么是竞争条件?你怎样发现和解决竞争?................................................... 9
18、你将如何使用 thread dump?你将如何分析Thread dump?............................ 9
19、为什么我们调用 start()方法时会执行 run() 方法,为什么我们不能直接调
用 run()方法? ........................................................................................................10
20、Java 中你怎样唤醒一个阻塞的线程?.............................................................10
21、 在 Java 中 CycliBarriar 和 CountdownLatch 有什么区别? ..............................10
22、什么是不可变对象,它对写并发应用有什么帮助?.......................................11
23、什么是多线程中的上下文切换?.....................................................................11
24、Java 中用到的线程调度算法是什么? ...........................................................12
25、什么是线程组,为什么在 Java 中不推荐使用?...........................................12
26、为什么使用 Executor 框架比使用应用创建和管理线程好? ...........................12
27、java 中有几种方法可以实现一个线程?......................................................13
28、如何停止一个正在运行的线程?.....................................................................13
29、notify()和 notifyAll()有什么区别?................................................................13
30、什么是 Daemon 线程?它有什么意义?..........................................................14
31、java 如何实现多线程之间的通讯和协作?..................................................14
32、什么是可重入锁(ReentrantLock)? .............................................................14
33、当一个线程进入某个对象的一个 synchronized................................................15
34、乐观锁和悲观锁的理解及如何实现,有哪些实现方式? ...............................15
35、SynchronizedMap 和 ConcurrentHashMap 有什么区别?...................................16
36、CopyOnWriteArrayList 可以用于什么应用场景? ............................................16
37、什么叫线程安全?servlet 是线程安全吗? ................................................17
38、volatile 有什么用?能否用一句话说明下volatile 的应用场景? .....................17
39、为什么代码会重排序?....................................................................................17
40、在 java 中 wait 和 sleep 方法的不同?.............................................................17
42、如何在两个线程间共享数据?.........................................................................18
43、Java 中 notify 和 notifyAll 有什么区别?..........................................................18
44、为什么 wait, notify 和 notifyAll 这些方法不在 thread 类里面?.................18
45、什么是 ThreadLocal 变量? ............................................................................18
46 、 Java 中 interrupted 和 isInterrupted 方 法.......................................................19
47、为什么 wait和notify 方法要在同步块中调用? .......................................19
48、为什么你应该在循环中检查等待条件?............................................................19
49、Java 中的同步集合与并发集合有什么区别?..................................................19
50、什么是线程池? 为什么要使用它? ................................................................19
51、怎么检测一个线程是否拥有锁?.....................................................................20
52、你如何在 Java 中获取线程堆栈?....................................................................20
53、JVM 中哪个参数是用来控制线程的栈堆栈小的? ............................................20
54、Thread 类中的 yield 方法有什么作用?........................................................20
55、Java 中 ConcurrentHashMap 的并发度是什么?..................................................20
56、Java 中 Semaphore 是什么? ...........................................................................21
57、Java 线程池中 submit() 和 execute()方法有什么区别? ..............................21
58、什么是阻塞式方法?........................................................................................21
59、Java 中的 ReadWriteLock 是什么?..................................................................21
60、volatile 变量和 atomic 变量有什么不同? .......................................................21
61、可以直接调用 Thread 类的 run ()方法么?......................................................22
62、如何让正在运行的线程暂停一段时间?..........................................................22
63、你对线程优先级的理解是什么?.....................................................................22
64、什么是线程调度器(Thread Scheduler)和时间分 片 (Time Slicing )?................22
65、你如何确保 main()方法所在的线程是 Java 程.................................................23
66、线程之间是如何通信的?................................................................................23
67、为什么线程通信的方法 wait(), notify()和notifyAll()被定义在 Object 类里?...23
68、为什么 wait(), notify()和 notifyAll ()必须在同步方法或者同步块中被调用?
.................................................................................................................................23
69、为什么 Thread 类的 sleep()和 yield ()方法是静态的?................................23
70、如何确保线程安全?........................................................................................24
71、同步方法和同步块,哪个是更好的选择?......................................................24
72、如何创建守护线程?........................................................................................24
73、什么是 Java Timer 类?如何创建一个有特定时间间隔的任务? ....................24