空中網多執行緒題

2021-06-03 16:12:33 字數 2038 閱讀 2625

空中網4k/5k月薪挑選大四實習生的執行緒題

兩年前,我們乙個大四的學員去應聘空中網的實習生職位,空中網只給他出了三道執行緒題,拿回家做兩天後再去給經理講解,如果前兩題做好了給4k月薪,第三道題也做出來的話就給5k的月薪。這樣的實習薪水和招聘要求,不需要有工作經驗的限制,純粹是技術功底的比拼和考核,而不像許多其他公司非要招兩年工作經驗的人,逼得那些剛畢業和未畢業的大學生不得不去撒謊,不得不去做假簡歷,甚至假畢業證!所以,空中網的這份工作對未畢業的大學生來說,還是很有吸引力的。這個學生是否入職空中網,大家去猜吧,免得有人看不順眼而叫罵,呵呵!

第一題:現有的程式**模擬產生了16個日誌物件,並且需要執行16秒才能列印完這些日誌,請在程式中增加4個執行緒去呼叫parselog()方法來分頭列印這16個日誌物件,程式只需要執行4秒即可列印完這些日誌物件。原始**如下:

package read;

public class test }}

//parselog方法內部的**不能改動

public static void parselog(string log) catch (interruptedexception e) }}

第二題:現成程式中的test類中的**在不斷地產生資料,然後交給testdo.dosome()方法去處理,就好像生產者在不斷地產生資料,消費者在不斷消費資料。請將程式改造成有10個執行緒來消費生成者產生的資料,這些消費者都呼叫testdo.dosome()方法去進行處理,故每個消費者都需要一秒才能處理完,程式應保證這些消費者執行緒依次有序地消費資料,只有上乙個消費者消費完後,下乙個消費者才能消費資料,下乙個消費者是誰都可以,但要保證這些消費者執行緒拿到的資料是有順序的。原始**如下:

package queue;

public class test }}

//不能改動此testdo類

class testdo catch (interruptedexception e)

string output = input + ":"+ (system.currenttimemillis() / 1000);

return output;}}

第三題:現有程式同時啟動了4個執行緒去呼叫testdo.dosome(key, value)方法,由於testdo.dosome(key, value)方法內的**是先暫停1秒,然後再輸出以秒為單位的當前時間值,所以,會列印出4個相同的時間值,如下所示:

4:4:1258199615

1:1:1258199615

3:3:1258199615

1:2:1258199615

請修改**,如果有幾個執行緒呼叫testdo.dosome(key, value)方法時,傳遞進去的key相等(equals比較為true),則這幾個執行緒應互斥排隊輸出結果,即當有兩個執行緒的key都是"1"時,它們中的乙個要比另外其他執行緒晚1秒輸出結果,如下所示:

4:4:1258199615

1:1:1258199615

3:3:1258199615

1:2:1258199616

總之,當每個執行緒中指定的key相等時,這些相等key的執行緒應每隔一秒依次輸出時間值(要用互斥),如果key不同,則並行執行(相互之間不互斥)。原始**如下:

package syn;

//不能改動此test類

public class test extends thread

public static void main(string args) throws interruptedexception

public void run()

}class testdo

private static testdo _instance = new testdo();

public static testdo getinstance()

public void dosome(object key, string value) catch (interruptedexception e) }}

}大家只要將上面任何一題的完整**複製到eclipse中的某個工程的src目錄下,就可以自動生成包名和檔名,執行該程式就可以觀察到程式修改前的執行效果。

空中網4k 5k月薪挑選大四實習生的執行緒題

空中網4k 5k月薪挑選大四實習生的執行緒題 兩年前,我們乙個大四的學員去應聘空中網的實習生職位,空中網只給他出了三道執行緒題,拿回家做兩天後再去給經理講解,如果前兩題做好了給4k月薪,第三道題也做出來的話就給5k的月薪。這樣的實習薪水和招聘要求,不需要有工作經驗的限制,純粹是技術功底的比拼和考核,...

空中網牽手杜蕾斯與《坦克世界》一起高呼 向我開炮

北京2018年1月24日電 美通社 新年伊始,空中網再次開啟了新一輪跨界探索,走近玩家生活,與杜蕾斯展開了2018年第一次甜蜜跨界合作。2018年1月24日 1月26日期間,在京東 銷售的杜蕾斯產品 持久裝12片 將配置空中網旗下軍武遊戲大作 坦克世界 的主題禮盒,限量2000套,助力玩家獲得更暢爽...

空中網發布全新戰艦手遊 持續布局軍武遊戲市場

發布會上,空中網董事長兼 ceo 王雷雷表示 多年以來,空中網作為國內軍武遊戲第一品牌廠商,不斷在軍武遊戲領域積極探索,成功推出了 坦克世界 戰艦世界 等有口皆碑的產品,獲得了超過8000萬使用者的厚愛和支援。2017年,我們推出了軍武手遊 戰艦獵手 已穩定運營超過1年時間,獲得了玩家們的肯定和好評...