Socket.EndAccept 方法

定義

非同步接受連入連線嘗試。

多載

EndAccept(IAsyncResult)

以非同步方式接受連入的連接嘗試,並建立新的 Socket 來處理遠端主機通訊。

EndAccept(Byte[], IAsyncResult)

以非同步方式接受連入連線嘗試,並建立新的 Socket 物件,以處理遠端主機通訊。 這個方法會傳回包含已傳輸之初始資料的緩衝區。

EndAccept(Byte[], Int32, IAsyncResult)

以非同步方式接受連入連線嘗試,並建立新的 Socket 物件,以處理遠端主機通訊。 這個方法會傳回包含已傳輸之初始資料和位元組數的緩衝區。

EndAccept(IAsyncResult)

來源:
Socket.cs
來源:
Socket.cs
來源:
Socket.cs

以非同步方式接受連入的連接嘗試,並建立新的 Socket 來處理遠端主機通訊。

public:
 System::Net::Sockets::Socket ^ EndAccept(IAsyncResult ^ asyncResult);
public System.Net.Sockets.Socket EndAccept (IAsyncResult asyncResult);
member this.EndAccept : IAsyncResult -> System.Net.Sockets.Socket
Public Function EndAccept (asyncResult As IAsyncResult) As Socket

參數

asyncResult
IAsyncResult

IAsyncResult,儲存這個非同步作業的狀態資訊以及任何使用者定義的資料。

傳回

Socket,將處理與遠端主機的通訊。

例外狀況

asyncResultnull

asyncResult 不是由呼叫 BeginAccept(AsyncCallback, Object) 的方式所建立。

嘗試存取通訊端時發生錯誤。

-或-

只限 .NET 7+ : Socket 已關閉 。

僅限 .NET Framework、.NET Core 和 .NET 5-6:Socket已關閉 。

備註

重要

這是相容性 API。 不建議使用 APM (Begin*End*) 方法來進行新的開發。 請改用 Task以 為基礎的對等專案。

EndAccept 完成 由啟動 BeginAccept的作業。 您必須傳遞 IAsyncResult 比對呼叫所建立的 BeginAccept

方法 EndAccept 會封鎖連線,直到連入連線佇列中擱置為止。 方法 EndAccept 會接受傳入連線,並傳回新的 Socket ,可用來將數據傳送至遠端主機,以及從遠端主機接收數據。

注意

如果您收到 SocketException,請使用 SocketException.ErrorCode 屬性來取得特定的錯誤碼。

注意

在應用程式中啟用網路追蹤時,這個成員會輸出追蹤資訊。 如需詳細資訊,請參閱 .NET Framework 中的網路追蹤

另請參閱

適用於

EndAccept(Byte[], IAsyncResult)

來源:
Socket.cs
來源:
Socket.cs
來源:
Socket.cs

以非同步方式接受連入連線嘗試,並建立新的 Socket 物件,以處理遠端主機通訊。 這個方法會傳回包含已傳輸之初始資料的緩衝區。

public:
 System::Net::Sockets::Socket ^ EndAccept([Runtime::InteropServices::Out] cli::array <System::Byte> ^ % buffer, IAsyncResult ^ asyncResult);
public System.Net.Sockets.Socket EndAccept (out byte[] buffer, IAsyncResult asyncResult);
member this.EndAccept : Byte[] * IAsyncResult -> System.Net.Sockets.Socket
Public Function EndAccept (ByRef buffer As Byte(), asyncResult As IAsyncResult) As Socket

參數

buffer
Byte[]

Byte 型別的陣列,包含已傳輸的位元組。

asyncResult
IAsyncResult

IAsyncResult 物件,儲存這個非同步作業的狀態資訊以及任何使用者定義的資料。

傳回

Socket 物件,可處理與遠端主機的通訊。

例外狀況

僅限 .NET Framework、.NET Core 和 .NET 5-6:Socket已關閉 。

asyncResult 是空的。

asyncResult 不是由呼叫 BeginAccept(AsyncCallback, Object) 的方式所建立。

嘗試存取通訊端時發生錯誤。

-或-

只限 .NET 7+ : Socket 已關閉 。

備註

重要

這是相容性 API。 不建議使用 APM (Begin*End*) 方法來進行新的開發。 請改用 Task以 為基礎的對等專案。

EndAccept 完成 由啟動 BeginAccept的作業。 您必須傳遞 IAsyncResult 比對呼叫所建立的 BeginAccept

buffer這個多載的參數包含呼叫BeginAccept中收到的數據,而 bytesTransferred 參數則包含呼叫中傳輸的位元組數目。

方法 EndAccept 會封鎖連線,直到連入連線佇列中擱置為止。 方法 EndAccept 會接受傳入連線,並傳回新的 Socket ,可用來將數據傳送至遠端主機,以及從遠端主機接收數據。

注意

如果您收到 SocketException,請使用 SocketException.ErrorCode 屬性來取得特定的錯誤碼。

注意

在應用程式中啟用網路追蹤時,這個成員會輸出追蹤資訊。 如需詳細資訊,請參閱 .NET Framework 中的網路追蹤

適用於

EndAccept(Byte[], Int32, IAsyncResult)

來源:
Socket.cs
來源:
Socket.cs
來源:
Socket.cs

以非同步方式接受連入連線嘗試,並建立新的 Socket 物件,以處理遠端主機通訊。 這個方法會傳回包含已傳輸之初始資料和位元組數的緩衝區。

public:
 System::Net::Sockets::Socket ^ EndAccept([Runtime::InteropServices::Out] cli::array <System::Byte> ^ % buffer, [Runtime::InteropServices::Out] int % bytesTransferred, IAsyncResult ^ asyncResult);
public System.Net.Sockets.Socket EndAccept (out byte[] buffer, out int bytesTransferred, IAsyncResult asyncResult);
member this.EndAccept : Byte[] * int * IAsyncResult -> System.Net.Sockets.Socket
Public Function EndAccept (ByRef buffer As Byte(), ByRef bytesTransferred As Integer, asyncResult As IAsyncResult) As Socket

參數

buffer
Byte[]

Byte 型別的陣列,包含已傳輸的位元組。

bytesTransferred
Int32

已傳輸的位元組數。

asyncResult
IAsyncResult

IAsyncResult 物件,儲存這個非同步作業的狀態資訊以及任何使用者定義的資料。

傳回

Socket 物件,可處理與遠端主機的通訊。

例外狀況

僅限 .NET Framework、.NET Core 和 .NET 5-6:Socket已關閉 。

asyncResult 是空的。

asyncResult 不是由呼叫 BeginAccept(AsyncCallback, Object) 的方式所建立。

嘗試存取通訊端時發生錯誤。

-或-

只限 .NET 7+ : Socket 已關閉 。

備註

重要

這是相容性 API。 不建議使用 APM (Begin*End*) 方法來進行新的開發。 請改用 Task以 為基礎的對等專案。

EndAccept 完成 由啟動 BeginAccept的作業。 您必須傳遞 IAsyncResult 比對呼叫所建立的 BeginAccept

方法 EndAccept 會封鎖連線,直到連入連線佇列中擱置為止。 方法 EndAccept 會接受傳入連線,並傳回新的 Socket ,可用來將數據傳送至遠端主機,以及從遠端主機接收數據。

注意

如果您收到 SocketException,請使用 SocketException.ErrorCode 屬性來取得特定的錯誤碼。

注意

在應用程式中啟用網路追蹤時,這個成員會輸出追蹤資訊。 如需詳細資訊,請參閱 .NET Framework 中的網路追蹤

適用於