java中的線程模型有:1.Actor消息模型;2.生產者消費者模型;3.Future模型;4.Master-Worker模型;5.fork&join 模型;
java中的線程模型有以下幾種
1.Actor消息模型
Actor消息模型是一個基于消息傳遞機制并行任務處理思想,可以以消息的形式進行線程的數據傳輸,可以避免使用全局變量,從而避免避免數據同步錯誤的情況。
2.生產者消費者模型
生產者消費者模型可以開啟一個或多個線程來生產任務,然后再開啟一個或多個線程從緩存中取出任務并進行處理,其中生產者負責生成任務并緩存,消費者負責從緩存中取出任務并進行處理。
3.Future模型
Future模型中是將結果放在將來獲取,當主線程不急于獲取處理結果時,允許子線程先進行處理,并將處理結果保存,等主線程需要使用時在向子線程索取結果。
4.Master-Worker模型
Master-Worker模型是一個任務分發策略,可以通過開啟一個master線程接收任務,然后從master中根據任務的情況進行分發,當任務分發到worker子線程時,由子線程對任務進行處理。
5.fork&join模型
fork&join模型是是jdk中提供的線程模型,包含遞歸思想和回溯思想,可以通過遞歸來拆分任務,而利用回溯用合并結果,fork&join模型可以將一個大任務逐級拆分為多個子任務,然后分別在子線程中執行,當每個子線程執行結束之后逐級回溯,返回結果進行匯總合并,最終得出想要的結果,常用于處理一些可以進行拆分的大任務。