當前位置:編程學習大全網 - 網站源碼 - CAsyncSocket運作流程的同異步模式

CAsyncSocket運作流程的同異步模式

在長連接應用中,連接可能因為各種原因中斷,所以妳需要自動重連。妳需要根據CAsyncSocket的成員變量m_hSocket來判斷當前連接狀態:

if(m_hSocket==INVALID_SOCKET)

當然,很奇怪的是,即使連接已經中斷,OnClose也已經被觸發,妳還是需要在OnClose中調用Close,否則m_hSocket並不會被自動賦值為INVALID_SOCKET。

在很多長連接應用中,除建立連接以外,還需要先Login,然後才能進行業務處理,連接並Login是壹個步驟依賴性過程,用異步方式處理反而會很麻煩,而CAsyncSocket是支持切換為同步模式的,妳應該掌握在適當的時候切換同異步模式的方法:

DWORD dw;

//切換為同步模式

dw=0;

IOCtl(FIONBIO,&dw);

...

//切換回異步模式

dw=1;

IOCtl(FIONBIO,&dw);

  • 上一篇:如何使用微信考勤、考勤、蓋亞工坊
  • 下一篇:shell腳本可以加密嗎
  • copyright 2024編程學習大全網