天天看點

多線程程式設計學習(8)Thread-Per-Message

Thread-Per-Message【這個工作交給你模式】

一:Thread-Per-Message的參與者

--->Client(委托人)

--->host(中介開線程)

--->hepler(真正工作的勞工)

二:Thread-Per-Message模式什麼時候使用

--->提升響應時間,降低延遲時間

--->适合在操作順序無所謂的時候

--->(委托人)不需要傳回值的時候

--->應用在伺服器的制作(我提供原材料,你加工,我不關心結果)

--->調用方法+啟動線程--->完成某件事情(可以作為觸發器)

三:Thread-Per-Message思考

--->程序和線程的差別

        ==>程序是工作在作業系統上的,線程是工作在程序中的。

        ==>程序的記憶體空間是獨立的,不同的程序彼此獨立,互不幹擾

        ==>線程的記憶體空間是共享的,多個線程可以通路改寫記憶體上的同一個對象

        ==>程序切換比較繁重,線程切換比較輕松。是以密切相關的事件,線程更合适

四進階說明

--->java的記憶體模型中,将記憶體分為主存儲器和工作記憶體兩種。可讓線程共享的,隻有主存儲器部分。

--->匿名内部類

        ==>匿名内部類是将類的聲明與建立執行個體的操作寫在一起。

        ==>雖然寫在一起,也不是在執行方法時才建立出類檔案。匿名内部類和一般類一樣,都會在編譯時生成類檔案

        ==>匿名内部類中,用到方法的參數或局部變量時,必須将變量聲明成final.如果不是,則編譯錯誤

真正的勞工

多線程程式設計學習(8)Thread-Per-Message
多線程程式設計學習(8)Thread-Per-Message

View Code

找勞工開線程

多線程程式設計學習(8)Thread-Per-Message
多線程程式設計學習(8)Thread-Per-Message

主線程

多線程程式設計學習(8)Thread-Per-Message
多線程程式設計學習(8)Thread-Per-Message