簡單的多執行緒查詢

2021-10-07 15:08:49 字數 1542 閱讀 2485

下面是顯用來顯示方法執行的時間,但是暫時沒有顯示出方法名稱,

之前在做多資料來源的時候,在用到aop根據註解來切換資料來源的方法中,有根據joinpoint引數來得到乙個方法名稱,之後可以考慮新增一下。

public class methodtimer 

public static void end()else

}}

public inte***ce invoke
public class worker implements  runnable 

public string getresult()

public worker(string name, countdownlatch latch, invoke invoke)

@override

public void run() catch (exception e) finally

}}

具體解釋看注釋

public class worker implements  runnable 

public string getresult()

public worker(string name, countdownlatch latch, invoke invoke)

@override

public void run() catch (exception e) finally

}}

這裡建立執行緒是通過執行緒池來建立的,執行緒池部分還需要多去了解

public class threadpoolutil 

public static void calcaulate(runnable r)

}

主要的部分處理

public class threadmanager 

/*** 主要的處理

* @return

*/public mapcalculate()

// 在計數器沒有歸0的時候會一直阻塞

latch.await();

for(worker worker : workers)

methodtimer.end();

} catch (exception e)

return result;

}}

下面就是service處理的部分,就是通過threadmanager物件的add方法,新增每乙個執行任務,執行任務就是通過實現invoke的invoke方法執行的。

@service

public class multiplenumservice

});manager.add("第二個", new invoke()

});manager.add("第三個", new invoke()

});return manager.calculate();

}}

簡單的多執行緒

多個執行緒之間是搶cpu的關係有隨機性 主線程的名字 main 子執行緒的名字 從thread 0開始命名 setname可以命名 start 方法,來開啟執行緒,繼而實現run方法的自動呼叫.手動呼叫run的時候,他失去了任務區的功能,變成了乙個普通的方法.執行緒和任務分離 哪個執行緒需要工作,就...

簡單的多執行緒程式

下面是一段在windows環境下,建立多個執行緒執行程式的一段 這段 我去年就見過了,雖然挺簡單的,但是一直沒有在意,這次重新看它,希望能夠看出點不一樣的東西,平行計算一直是我乙個非常喜歡的研究方向.在自己寫的過程當中,還有乙個地方出現了乙個小小的錯誤,我想這如果不是我自己重新又寫了一遍是不會發現這...

多執行緒的簡單應用

前一陣兒用python寫了乙個抓取某 的指令碼,打包成了帶有gui的可執行程式,介面沒有怎麼設計只是有兩個按鈕,分別抓取兩類,並將抓取的放到當前目錄的上一資料夾。gui是用python自帶的庫tkinter,下面是效果圖 只有當抓取完成後圖形介面才會回到正常狀態。從網上查了一下,發現這是因為將邏輯處...