SuperSocket 2.0學習06:獲取會話的連接和斷開事件


官方學習資料:獲取會話的連接和斷開事件

本文開發環境:Win10 + VS2019 + .NetCore 3.1 + SuperSocket 2.0.0-beta.8。

Gitee:SuperSocketV2Sample

在SuperSocket 2.0中有3個類可以獲取會話的連接和斷開事件:AppSession、SuperSocketService、SuperSocketHostBuilder。

1、AppSession

重載OnSessionConnectedAsync和OnSessionClosedAsync以監聽會話的連接和斷開事件。

2、SuperSocketService

重載OnSessionConnectedAsync和OnSessionClosedAsync以監聽會話的連接和斷開事件。

3、SuperSocketHostBuilder

注冊Session處理器:

//注冊用於處理連接、關閉的Session處理器
.UseSessionHandler(async (session) =>
{
    Console.WriteLine($"{DateTime.Now} [SessionHandler] Session connected: {session.RemoteEndPoint}");
    await Task.Delay(0);
}, async (session, reason) =>
{
    Console.WriteLine($"{DateTime.Now} [SessionHandler] Session {session.RemoteEndPoint} closed: {reason}");
    await Task.Delay(0);
})

4、運行截圖

5、說明

參照擴展你的AppSession和SuperSocketService實現代碼,如果在上述3種類中都對會話的連接和斷開事件進行了處理,無論在構建SuperSocketHostBuilder時注入代碼的順序是什么樣的,都會按照AppSession->SuperSocketService->SuperSocketHostBuilder的順序進行相關事件傳遞。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM