多執行緒必須用到的執行緒池 什麼時候用多執行緒

2022-06-06 10:45:09 字數 643 閱讀 1338

案例需求:要開發的專案是乙個it問答平台,其中使用者發布問題後,需要給平台上所有選了該問題類別的郵箱中各發乙份郵件。

分析:這個時候就必須用到多執行緒了,因為使用者發布問題和給其他使用者發郵件可以說是兩個相互獨立的步驟,如果讓主程式一行一行執行的話,那如果發郵件的人很多的話,使用者發乙個問題要等很長時間頁面才會響應,這個肯定是不能容忍的。但是用普通new乙個執行緒,然後.start的話會出現大問題,很有可能伺服器會崩掉,執行緒不能復用。

sendtwoemailtools st=new sendtwoemailtools();//你的執行緒類

thread thread = new thread(st);

//將執行緒放入池中進行執行

pool.execute(thread);

//關閉執行緒池

pool.shutdown();

這樣就比較好的解決問題了。

什麼時候使用多執行緒

使用多執行緒為什麼可以提高效率呢?io是關鍵。很多的應用要使用io,但是cpu是很快的,io往往是很慢的。看 main1.c include include include include include include char p void sys error int errnum void f...

C 什麼時候使用執行緒池ThreadPool

在c 中使用執行緒池的原因與任何其他語言相同。1.當你想限制正在執行的執行緒數量或不想建立和銷毀它們的開銷時,請使用執行緒池。通過小型任務,你閱讀的書意味著使用壽命短的任務。如果建立乙個只執行一秒的執行緒需要十秒鐘的時間,那就是你應該使用池的乙個地方 忽略我的實際數字,這是計數的比率 否則,你花大量...

什麼時候手動建立執行緒而不使用執行緒池

1 需要自定義執行緒的優先順序,執行緒池中線程總是normal 2 需要乙個前台執行緒,執行緒池中線程是後台執行緒 非ui執行緒最好使用執行緒池建立為後台執行緒,常常關閉乙個軟體之後,仍然占有記憶體,就是由於建立了多個前台執行緒,程式關閉的時候,還有其他前台執行緒沒有關閉。3 需要手動終止執行緒,執...