1. 什么是進(jìn)程 2. 什么是線程 3. 多線程的幾種實(shí)現(xiàn)方式 4. Vector,、SimpleDateFormat是線程安全類嗎 5. 哪些集合類是線程安全的 6. 多線程中忙循環(huán)是什么 7. 什么是線程局部變量 8. 進(jìn)程間如何通訊 9. 線程間如何通訊 10. 什么是多線程環(huán)境下的偽共存(false sharing) 11. 同步和異步有何不同,,在什么情況下分別使用它們?舉例說明 12. ConcurrentHashMap 和 Hashtable的區(qū)別 13. Hashtable與Hashmap的區(qū)別 14. ArrayBlockingQueue的用法 15. CountDownLatch的用法 16. CountDownLatch與CyclicBarrier有什么不同,?各自內(nèi)部原理和用法是什么 17. 線程和進(jìn)程有什么區(qū)別 18. 用Runnable還是用Thread 19. Thread類中的strat()和run()方法有什么區(qū)別? 20. java中Runnable和Callable的區(qū)別 21. 什么是java內(nèi)存模型 22. 什么是線程安全,? 23. java中什么是競(jìng)態(tài)條件 24. java中如何停止一個(gè)線程 25. 一個(gè)線程運(yùn)行時(shí)發(fā)生異常會(huì)怎樣,? 26. 如何在兩個(gè)線程間共享數(shù)據(jù)? 27. 鎖池和等待池 28. java中的notify和notifyAll有什么區(qū)別? 29. 為什么wait,、notify和notifyAll這些方法不再thread類里面 30. 什么是FutureTask? 31. java中interrupted和isInterrupted方法的區(qū)別 32. 為什么wait和notify方法要在同步快中調(diào)用,? 33. 為什么你應(yīng)該在循環(huán)中檢查等待條件 34. java中堆和棧有什么不同? 35. 什么是線程池,?為什么要使用它,? 36. 如何避免死鎖? 37. java中活鎖和死鎖有什么區(qū)別,? 38. 怎么檢測(cè)一個(gè)線程是否擁有鎖,? 39. 如果在java中獲取線程堆棧? 40. java中synchronized和ReentrantLock有什么不同,? 41. 有三個(gè)線程T1,、T2和T3,怎么確保它們按照順序執(zhí)行,? 42. Thread類中的yield方法有什么作用,? 43. java中ConcurrentHashMap的并發(fā)度是什么? 44. java中的Semaphore是什么,? 45. 如果你提交任務(wù)時(shí),,線程池隊(duì)列已滿時(shí)會(huì)發(fā)生什么? 46. java線程池中submit()和execute()方法有什么區(qū)別,? 47. 什么是阻塞式方式,? 48. java中的ReadWriteLock是什么? 49. volatile變量和atomic變量由什么不同? 50. 如果同步塊內(nèi)的線程拋出異常會(huì)發(fā)生什么,? 51. 單例模式的雙檢鎖是什么,? 52. 寫出3條你遵循的多線程最佳實(shí)踐 53. 如何強(qiáng)制啟動(dòng)一個(gè)線程? 54. java中fork join框架是什么,? 55. java多線程中調(diào)用wait()和sleep方法有什么不同,? 56. 如何強(qiáng)制啟動(dòng)一個(gè)線程? 57. 什么是線程組,,為什么在Java中不推薦使用 58. 有哪些不同的線程生命周期 以上是面試的經(jīng)驗(yàn)以及學(xué)習(xí)的方面,,分享給大家,希望大家可以了解高并發(fā)面試題,。覺得有所收獲的話可以關(guān)注小編,,文末評(píng)論“資料”后臺(tái)私信“架構(gòu)資料”獲取小編整理出來的一些面試資料,以及進(jìn)階架構(gòu)視頻文檔,。 架構(gòu)師基礎(chǔ)專題
JAVA高并發(fā)分布式課程視頻 高并發(fā)和分布式技術(shù) |
|