Socket.EndAccept 方法

定義

非同步接受來電連線嘗試。

多載

名稱 Description
EndAccept(IAsyncResult)

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

EndAccept(Byte[], IAsyncResult)

非同步接受輸入連線嘗試,並建立一個新的 Socket 物件來處理遠端主機通訊。 此方法回傳一個緩衝區,內含初始傳輸資料。

EndAccept(Byte[], Int32, IAsyncResult)

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

EndAccept(IAsyncResult)

來源:
Socket.cs
來源:
Socket.cs
來源:
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 儲存此非同步操作狀態資訊及任何使用者定義資料的裝置。

傳回

A Socket 用來處理與遠端主機的通訊。

例外狀況

asyncResultnull

asyncResult 並非由呼叫 所 BeginAccept(AsyncCallback, Object)創造。

嘗試存取該套接字時發生錯誤。

-或-

僅限 .NET 7+ 版本: Socket 已關閉。

僅支援 .NET Framework、.NET Core 及 .NET 5-6: Socket 已關閉。

備註

Important

這是一個相容性 API。 我們不建議使用 APMBegin*End*)方法來進行新開發。 相反地,使用 Task基於 的等價函數。

EndAccept 完成由 開始的 BeginAccept運算。 你需要傳遞 IAsyncResult 由配對 BeginAccept 呼叫創建的。

EndAccept 方法會阻塞直到連線在進來的連線佇列中待處理。 此 EndAccept 方法接受輸入連線並回傳 Socket 一個新連線,可用於傳送資料與遠端主機的存取。

Note

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

Note

當您在應用程式中啟用網路追蹤時,此成員會輸出追蹤資訊。 欲了解更多資訊,請參閱.NET框架中的網路追蹤

另請參閱

適用於

EndAccept(Byte[], IAsyncResult)

來源:
Socket.cs
來源:
Socket.cs
來源:
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 已關閉。

備註

Important

這是一個相容性 API。 我們不建議使用 APMBegin*End*)方法來進行新開發。 相反地,使用 Task基於 的等價函數。

EndAccept 完成由 開始的 BeginAccept運算。 你需要傳遞 IAsyncResult 由配對 BeginAccept 呼叫創建的。

buffer此超載的參數包含呼叫中接收BeginAccept的資料,bytesTransferred參數則包含呼叫中傳輸的位元組數。

EndAccept 方法會阻塞直到連線在進來的連線佇列中待處理。 此 EndAccept 方法接受輸入連線並回傳 Socket 一個新連線,可用於傳送資料與遠端主機的存取。

Note

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

Note

當您在應用程式中啟用網路追蹤時,此成員會輸出追蹤資訊。 欲了解更多資訊,請參閱.NET框架中的網路追蹤

適用於

EndAccept(Byte[], Int32, IAsyncResult)

來源:
Socket.cs
來源:
Socket.cs
來源:
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 已關閉。

備註

Important

這是一個相容性 API。 我們不建議使用 APMBegin*End*)方法來進行新開發。 相反地,使用 Task基於 的等價函數。

EndAccept 完成由 開始的 BeginAccept運算。 你需要傳遞 IAsyncResult 由配對 BeginAccept 呼叫創建的。

EndAccept 方法會阻塞直到連線在進來的連線佇列中待處理。 此 EndAccept 方法接受輸入連線並回傳 Socket 一個新連線,可用於傳送資料與遠端主機的存取。

Note

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

Note

當您在應用程式中啟用網路追蹤時,此成員會輸出追蹤資訊。 欲了解更多資訊,請參閱.NET框架中的網路追蹤

適用於