MINA2 0簡單使用

2021-08-23 13:55:42 字數 918 閱讀 3648

一直知道mina是apache 開發的乙個開發socket程式設計框架,但一直沒弄清楚mina2.0裡的多執行緒該如何處理,根據apache提供的文件,使用mina2.0開發多執行緒的程式變的非常簡單,只用在其filter中加入執行緒池就可以了,感覺挺神奇,於是參考apache的其他專案,寫了個小例子,下面是**,作為自己以後學習使用。

public class minaservertest 

public synchronized void start()catch(ioexception e)

}}

handler我沒有實現,這裡只是舉個小例子,handler需要根據業務自己編寫相應的函式就好了

public class yourhandler implements iohandler

public void sessionopened(iosession session) throws exception

public void sessionclosed(iosession session) throws exception

public void sessionidle(iosession session, idlestatus status) throws exception

public void exceptioncaught(iosession session, throwable cause) throws exception

public void messagereceived(iosession session, object message) throws exception

public void messagesent(iosession session, object message) throws exception

}

MINA 2 0 使用者手冊

mina 2.0 使用者手冊,來自官網的 user guide 由於沒有全部完成 有一部分是 to be completed.因此,現在只能給出目錄和鏈結,也是方便自己隨時檢視,另外 1.該文件最具權威性 2.該文件雖是英文的,但是比較簡單易懂,借助google翻譯等工具,完全可以進行快速學習 3....

Mina2 0框架原始碼剖析(二)

其中有乙個idlestatuschecker成員,它用來對服務的空閒狀態進行檢查,在乙個服務啟用時會將服務納入到檢查名單中,而在服務失效時會將服務從名單中剔除。會單獨開乙個執行緒進行具體的空閒檢查,這是通過下面這個執行緒類來負責的 具體的空閒檢查 如下,超過能容忍的最大空閒時間,就會fire出ses...

Mina2 0框架原始碼剖析(三)

abstractioacceptor類繼承自abstractioservice基類,並實現了ioacceptor介面,它主要的成員變數是本地繫結位址。在呼叫bind或unbind方法時需要先獲取繫結鎖bindlock,具體的繫結操作還是在bind0這個方法中實現的。一旦繫結成功後,就會向服務監聽者發...