程序員:我熟悉多線程!面試官:都不敢寫精通,還敢要26K?

事情是這樣的...

面試官:你好!你的一些信息我們已經初步瞭解了,咱們直接進入正題吧!

程序員:好的!

面試官:嗯,對多線程有一些深入瞭解是吧?

程序員:是的,多線程本身是學習Java語言入門到高級的必備能力,所以平時看得比較多

面試官:入門?呵呵~好那我就來好好問問,多線程有什麼用?

程序員:一,發揮多核CPU 的優勢;二,防止阻塞;三,便於建模

面試官:說說Java 實現線程的幾種方式

程序員:繼承 Thread 類實現多線程;實現 Runnable 接口方式實現多線程;使用 ExecutorService、Callable、Future 實現有返回結果的多線程

面試官:多線程同步有哪幾種方法?

程序員:Synchronized 關鍵字,Lock 鎖實現,分佈式鎖等

面試官:線程中的 wait()和 sleep()方法有什麼區別?

程序員:sleep 方法和 wait 方法都可以用來放棄 CPU 一定的時間,不同點在於如果線程持有某個對象的監視器,sleep 方法不會放棄這個對象的監視器,wait 方法會放棄這個對象的監視器

面試官:線程數過多會造成什麼異常?

程序員:線程過多會造成棧溢出,也有可能會造成堆異常

面試官:說一說樂觀鎖、悲觀鎖、自旋鎖、死鎖、活鎖、飢餓、無鎖、公平鎖、非公平鎖、重入鎖、共享鎖、獨佔鎖、重量級鎖、輕量級鎖、偏向鎖、分段鎖、同步鎖

程序員:...念貫口嗎?

面試官:說不出來沒關係,結合線程複用、線程池組成、拒絕策略和Java線程池工作過程來說說線程池工作原理

程序員:...

面試官:不知道?阻塞隊列的原理呢?

程序員:...

面試官:這些都不知道,你寫什麼熟悉啊?

程序員:

面試官:行了,現在已經兩點了,天色不早,回家等通知吧!

程序員:我TM寫的熟悉又不是精通,你是不是搞我?

面試官:多線程都不敢寫精通,你敢要26K?

敢要26k...要26k...26k...kkk...


你知道你和高薪的距離在哪裏嗎?

簡單的多線程是Java編程入門必學知識之一,但是,基礎的多線程知識遠遠無法滿足成爲一個高級Java工程師的標準。

要能熟練的解決併發等問題,充分了解線程池,知其然知其所以然,只有這樣,在面試的時候,不是簡簡單單三五個小時能說完的。

具體需要掌握的內容下面有部分借鑑,由於多線程內容實在過多,小天這裏就只把目錄截出來了

需要的朋友後臺私信【面試】免費領取!

  • 面試題類

  • 線程實現
  • 4中線程池
  • 線程生命週期
  • Java鎖

  • 線程基本方法
  • 線程上下文切換

  • 線程池原理
  • Java阻塞隊列原理

  • ThreadLocal
  • CAS
  • AQS
  • 進程調度算法

部分內容呈現:

具體需要掌握的內容下面有部分借鑑,由於多線程內容實在過多,小編這裏就只把目錄截出來了

感謝閱讀,關注、點贊、評論將是對小編最大的支持!也是小編分享更多幹貨的動力!>_<

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章