系列前言
法」,相信你也能對多執行緒揮灑自如,在筆試面試中順利的秒殺多執行緒試題。
-------------------------------------華麗的分割線---------------------------------------
下面就來看看這三類題目吧。
第一題:執行緒的基本概念、執行緒的基本狀態及狀態之間的關係?
第二題:執行緒與程序的區別?
這個題目問到的概率相當大,計算機專業考研中也常常考到。要想全部答出比較難。
第三題:多執行緒有幾種實現方法,都是什麼?
第四題:多執行緒同步和互斥有幾種實現方法,都是什麼?
我在參加2023年迅雷校園招聘時的一面和二面都被問到這個題目,回答的好將會給面試成績加不少分。
第五題:多執行緒同步和互斥有何異同,在什麼情況下分別使用他們?舉例說明。
以下多執行緒對int型變數x的操作,哪幾個不需要進行同步:
a. x=y; b. x++; c. ++x; d. x=1;
第二題(阿里巴巴筆試題)
多執行緒中棧與堆是公有的還是私有的
a:棧公有, 堆私有
b:棧公有,堆公有
c:棧私有, 堆公有
d:棧私有,堆私有
第一題(台灣某防毒軟體公司面試題):
在windows程式設計中互斥量與臨界區比較類似,請分析一下二者的主要區別。
第二題:
乙個全域性變數tally,兩個執行緒併發執行(**段都是threadproc),問兩個執行緒都結束後,tally取值範圍。
inttally
= 0;
//glable
void
threadproc()
第三題(某培訓機構的練習題):
子執行緒迴圈10次,接著主線程迴圈100 次,接著又回到子執行緒迴圈10次,接著再回到主線程又迴圈100 次,如此迴圈50次,試寫出**。
第四題(迅雷筆試題):
編寫乙個程式,開啟3個執行緒,這3個執行緒的id分別為a、b、c,每個執行緒將自己的id在螢幕上列印10遍,要求輸出結果必須按abc的順序顯示;如:abcabc….依次遞推。
第五題(google面試題)
有四個執行緒1、2、3、4。執行緒1的功能就是輸出1,執行緒2的功能就是輸出2,以此類推.........現在有四個檔案abcd。初始都為空。現要讓四個檔案呈如下格式:
a:1 2 3 4 1 2....
b:2 3 4 1 2 3....
c:3 4 1 2 3 4....
d:4 1 2 3 4 1....
請設計程式。
下面的第六題與第七題也是在考研中或是程式設計師和軟體設計師認證考試中的熱門試題。
第六題生產者消費者問題
這是乙個非常經典的多執行緒題目,題目大意如下:有乙個生產者在生產產品,這些產品將提供給若干個消費者去消費,為了使生產者和消費者能併發執行,在兩者之間設定乙個有多個緩衝區的緩衝池,生產者將它生產的產品放入乙個緩衝區中,消費者可以從緩衝區中取走產品進行消費,所有生產者和消費者都是非同步方式執行的,但它們必須保持同步,即不允許消費者到乙個空的緩衝區中取產品,也不允許生產者向乙個已經裝滿產品且尚未被取走的緩衝區中投放產品。
第七題
讀者寫者問題
這也是乙個非常經典的多執行緒題目,題目大意如下:有乙個寫者很多讀者,多個讀者可以同時讀檔案,但寫者在寫檔案時不允許有讀者在讀檔案,同樣有讀者讀時寫者也不能寫。
原文:
多執行緒筆試面試題彙總
系列前言 法 相信你也能對多執行緒揮灑自如,在筆試面試中順利的秒殺多執行緒試題。華麗的分割線 下面就來看看這三類題目吧。第一題 執行緒的基本概念 執行緒的基本狀態及狀態之間的關係?第二題 執行緒與程序的區別?這個題目問到的概率相當大,計算機專業考研中也常常考到。要想全部答出比較難。第三題 多執行緒有...
多執行緒16 多執行緒筆試面試題彙總
下面就來看看這三類題目吧。第一題 執行緒的基本概念 執行緒的基本狀態及狀態之間的關係?第二題 執行緒與程序的區別?這個題目問到的概率相當大,計算機專業考研中也常常考到。要想全部答出比較難。第三題 多執行緒有幾種實現方法,都是什麼?第四題 多執行緒同步和互斥有幾種實現方法,都是什麼?我在參加2011年...
多執行緒筆試面試題彙總 答案
以下多執行緒對int型變數x的操作,哪幾個不需要進行同步 a.x y b.x c.x d.x 1 答案 abc a 在x86上它包含兩個操作 讀取y至暫存器,再把該值寫入x。讀y的值這個操作本身是原子的,把值寫入x也是原子的,但是兩者合起來不是原子操作,因為它不是不可再分的操作,所以需要進行同步 b...