共用方式為


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啟動的作業。 您必須傳遞 IAsyncResultBeginAccept 對呼叫所建立的 。

方法 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啟動的作業。 您必須傳遞 IAsyncResultBeginAccept 對呼叫所建立的 。

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啟動的作業。 您必須傳遞 IAsyncResultBeginAccept 對呼叫所建立的 。

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

注意

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

注意

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

適用於