CAsyncSocket::ShutDown
呼叫此成員函式停用傳送或接收,都會在通訊端。
BOOL ShutDown(
int nHow = sends
);
參數
nHow
描述的旗標何種作業將不再允許,使用下列其中一個列舉值:接收= 0
傳送= 1
兩個= 2
傳回值
如果不是零,則函式成功,否則 0 和特定錯誤碼來呼叫 GetLastError擷取。 下列錯誤套用至這個成員函式:
WSANOTINITIALISED A 成功 AfxSocketInit 必須在使用此 API 之前發生。
WSAENETDOWN 視窗通訊端實作偵測網路子系統失敗。
WSAEINVAL nHow 無效。
封鎖視窗通訊端作業的WSAEINPROGRESS A 正在進行中。
WSAENOTCONN 通訊端未連接SOCK_STREAM (僅限)。
WSAENOTSOCK 描述元不是通訊端。
備註
ShutDown 通訊端上的所有型別用於停用主應用程式一樣,傳輸或兩者。 如果為 0, nHow 後續在通訊端接收會禁止。 這並不會影響較低的通訊協定層。
對於傳輸控制通訊協定 (TCP) (TCP),並未變更 TCP 視窗,然後輸入資料都會接受 (,但尚未認可),直到視窗已用盡。 對於使用者資料包通訊協定 (UDP) (UDP),傳入的資料會接收資料包並排入佇列。 ICMP 錯誤封包中不會產生。 如果為 1, nHow 後續傳送不允許。 若是 TCP 通訊端,以翅傳送。 為 2 時會停用的設定 nHow 如上所述傳送和接收作業。
請注意 ShutDown 不關閉通訊端,然後,資源附加到通訊端不會釋放,直到 關閉 呼叫。 在關閉之後,應用程式不應該倚賴可以重複使用通訊端。 特別的是,不需要 Windows Sockets 實作支援在這類通訊端的 連接 。
範例
CAsyncSocket::OnReceive。請參閱範例。
需求
Header: afxsock.h