Socket.BeginAccept Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Memulai operasi asinkron untuk menerima upaya koneksi masuk.
Overload
BeginAccept(AsyncCallback, Object) |
Memulai operasi asinkron untuk menerima upaya koneksi masuk. |
BeginAccept(Int32, AsyncCallback, Object) |
Memulai operasi asinkron untuk menerima upaya koneksi masuk dan menerima blok data pertama yang dikirim oleh aplikasi klien. |
BeginAccept(Socket, Int32, AsyncCallback, Object) |
Memulai operasi asinkron untuk menerima upaya koneksi masuk dari soket tertentu dan menerima blok data pertama yang dikirim oleh aplikasi klien. |
BeginAccept(AsyncCallback, Object)
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
Memulai operasi asinkron untuk menerima upaya koneksi masuk.
public:
IAsyncResult ^ BeginAccept(AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAccept (AsyncCallback? callback, object? state);
public IAsyncResult BeginAccept (AsyncCallback callback, object state);
member this.BeginAccept : AsyncCallback * obj -> IAsyncResult
Public Function BeginAccept (callback As AsyncCallback, state As Object) As IAsyncResult
Parameter
- callback
- AsyncCallback
Delegasi AsyncCallback .
- state
- Object
Objek yang berisi informasi status untuk permintaan ini.
Mengembalikan
Yang IAsyncResult mereferensikan pembuatan asinkron Socket .
Pengecualian
Objek Socket telah ditutup.
Soket yang menerima tidak mendengarkan koneksi. Anda harus menelepon Bind(EndPoint) dan Listen(Int32) sebelum memanggil BeginAccept(AsyncCallback, Object).
-atau-
Soket yang diterima terikat.
receiveSize
kurang dari 0.
.NET Framework dan .NET 5 dan yang lebih lama saja: Terjadi kesalahan saat mencoba mengakses soket.
Keterangan
Penting
Ini adalah API kompatibilitas. Kami tidak merekomendasikan penggunaan metode APM (Begin*
dan End*
) untuk pengembangan baru. Sebagai gantinya Task
, gunakan setara berbasis.
Protokol berorientasi koneksi dapat menggunakan BeginAccept metode untuk mulai menerima upaya koneksi masuk. Sebelum memanggil BeginAccept metode , Anda harus memanggil Listen metode untuk mendengarkan dan mengantre permintaan koneksi masuk.
Anda dapat meneruskan panggilan balik yang diterapkan AsyncCallback untuk BeginAccept mendapatkan pemberitahuan tentang penyelesaian operasi terima. Perhatikan bahwa jika tumpukan jaringan yang mendasar menyelesaikan operasi secara sinkron, panggilan balik mungkin dijalankan sebaris, selama panggilan ke BeginAccept. Dalam hal ini, CompletedSynchronously properti pada yang dikembalikan IAsyncResult akan diatur ke true
untuk menunjukkan bahwa metode selesai secara sinkron.
AsyncState Gunakan properti dari IAsyncResult untuk mendapatkan objek status yang diteruskan ke BeginAccept metode .
Operasi BeginAccept harus diselesaikan dengan memanggil EndAccept metode . Biasanya, metode ini dipanggil oleh delegasi yang disediakan AsyncCallback . EndAccept akan memblokir utas panggilan hingga operasi selesai.
Untuk membatalkan panggilan tertunda ke BeginAccept metode , tutup Socket. Ketika metode dipanggil Close saat operasi asinkron sedang berlangsung, panggilan balik yang diberikan ke BeginAccept metode dipanggil. Panggilan berikutnya ke EndAccept metode akan melempar ObjectDisposedException (sebelum .NET 7) atau SocketException (pada .NET 7+) untuk menunjukkan bahwa operasi telah dibatalkan.
Catatan
Anda dapat menggunakan RemoteEndPoint properti yang dikembalikan Socket untuk mengidentifikasi alamat jaringan host jarak jauh dan nomor port.
Catatan
Jika Anda menerima SocketException, gunakan SocketException.ErrorCode properti untuk mendapatkan kode kesalahan tertentu.
Catatan
Anggota ini mengeluarkan informasi pelacakan saat Anda mengaktifkan pelacakan jaringan di aplikasi Anda. Untuk informasi selengkapnya, lihat Pelacakan Jaringan di .NET Framework.
Catatan
Konteks eksekusi (konteks keamanan, pengguna yang ditiru, dan konteks panggilan) di-cache untuk metode asinkron Socket . Setelah penggunaan pertama konteks tertentu (metode asinkron Socket tertentu, instans tertentu Socket , dan panggilan balik tertentu), penggunaan konteks tersebut berikutnya akan melihat peningkatan performa.
Lihat juga
- Listen(Int32)
- AsyncCallback
- EndAccept(IAsyncResult)
- Socket
- RemoteEndPoint
- Contoh Soket Klien Asinkron
- Contoh Soket Server Asinkron
Berlaku untuk
BeginAccept(Int32, AsyncCallback, Object)
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
Memulai operasi asinkron untuk menerima upaya koneksi masuk dan menerima blok data pertama yang dikirim oleh aplikasi klien.
public:
IAsyncResult ^ BeginAccept(int receiveSize, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAccept (int receiveSize, AsyncCallback? callback, object? state);
public IAsyncResult BeginAccept (int receiveSize, AsyncCallback callback, object state);
member this.BeginAccept : int * AsyncCallback * obj -> IAsyncResult
Public Function BeginAccept (receiveSize As Integer, callback As AsyncCallback, state As Object) As IAsyncResult
Parameter
- receiveSize
- Int32
Jumlah byte yang akan diterima dari pengirim.
- callback
- AsyncCallback
Delegasi AsyncCallback .
- state
- Object
Objek yang berisi informasi status untuk permintaan ini.
Mengembalikan
Yang IAsyncResult mereferensikan pembuatan asinkron Socket .
Pengecualian
Objek Socket telah ditutup.
Soket yang menerima tidak mendengarkan koneksi. Anda harus menelepon Bind(EndPoint) dan Listen(Int32) sebelum memanggil BeginAccept(AsyncCallback, Object).
-atau-
Soket yang diterima terikat.
receiveSize
kurang dari 0.
.NET Framework dan .NET 5 dan yang lebih lama saja: Terjadi kesalahan saat mencoba mengakses soket.
Keterangan
Penting
Ini adalah API kompatibilitas. Kami tidak merekomendasikan penggunaan metode APM (Begin*
dan End*
) untuk pengembangan baru. Sebagai gantinya Task
, gunakan setara berbasis.
Protokol berorientasi koneksi dapat menggunakan BeginAccept metode untuk mulai menerima upaya koneksi masuk. Sebelum memanggil BeginAccept metode , Anda harus memanggil Listen metode untuk mendengarkan dan mengantre permintaan koneksi masuk.
Anda dapat meneruskan panggilan balik yang diterapkan AsyncCallback untuk BeginAccept mendapatkan pemberitahuan tentang penyelesaian operasi terima. Perhatikan bahwa jika tumpukan jaringan yang mendasar menyelesaikan operasi secara sinkron, panggilan balik mungkin dijalankan sebaris, selama panggilan ke BeginAccept. Dalam hal ini, CompletedSynchronously properti pada yang dikembalikan IAsyncResult akan diatur ke true
untuk menunjukkan bahwa metode selesai secara sinkron.
AsyncState Gunakan properti dari IAsyncResult untuk mendapatkan objek status yang diteruskan ke BeginAccept metode .
Operasi BeginAccept harus diselesaikan dengan memanggil EndAccept metode . Biasanya, metode ini dipanggil oleh delegasi yang disediakan AsyncCallback . EndAccept akan memblokir utas panggilan hingga operasi selesai.
Untuk membatalkan panggilan tertunda ke BeginAccept metode , tutup Socket. Ketika metode dipanggil Close saat operasi asinkron sedang berlangsung, panggilan balik yang diberikan ke BeginAccept metode dipanggil. Panggilan berikutnya ke EndAccept metode akan melempar ObjectDisposedException (sebelum .NET 7) atau SocketException (pada .NET 7+) untuk menunjukkan bahwa operasi telah dibatalkan.
Catatan
Anda dapat menggunakan RemoteEndPoint properti yang dikembalikan Socket untuk mengidentifikasi alamat jaringan host jarak jauh dan nomor port.
Catatan
Jika Anda menerima SocketException, gunakan SocketException.ErrorCode properti untuk mendapatkan kode kesalahan tertentu.
Catatan
Anggota ini mengeluarkan informasi pelacakan saat Anda mengaktifkan pelacakan jaringan di aplikasi Anda. Untuk informasi selengkapnya, lihat Pelacakan Jaringan di .NET Framework.
Catatan
Konteks eksekusi (konteks keamanan, pengguna yang ditiru, dan konteks panggilan) di-cache untuk metode asinkron Socket . Setelah penggunaan pertama konteks tertentu (metode asinkron Socket tertentu, instans tertentu Socket , dan panggilan balik tertentu), penggunaan konteks tersebut berikutnya akan melihat peningkatan performa.
Lihat juga
- Listen(Int32)
- AsyncCallback
- EndAccept(IAsyncResult)
- Socket
- RemoteEndPoint
- Contoh Soket Klien Asinkron
- Contoh Soket Server Asinkron
Berlaku untuk
BeginAccept(Socket, Int32, AsyncCallback, Object)
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
Memulai operasi asinkron untuk menerima upaya koneksi masuk dari soket tertentu dan menerima blok data pertama yang dikirim oleh aplikasi klien.
public:
IAsyncResult ^ BeginAccept(System::Net::Sockets::Socket ^ acceptSocket, int receiveSize, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAccept (System.Net.Sockets.Socket? acceptSocket, int receiveSize, AsyncCallback? callback, object? state);
public IAsyncResult BeginAccept (System.Net.Sockets.Socket acceptSocket, int receiveSize, AsyncCallback callback, object state);
member this.BeginAccept : System.Net.Sockets.Socket * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginAccept (acceptSocket As Socket, receiveSize As Integer, callback As AsyncCallback, state As Object) As IAsyncResult
Parameter
- receiveSize
- Int32
Jumlah maksimum byte yang akan diterima.
- callback
- AsyncCallback
Delegasi AsyncCallback .
- state
- Object
Objek yang berisi informasi status untuk permintaan ini.
Mengembalikan
Objek IAsyncResult yang mereferensikan pembuatan objek asinkron Socket .
Pengecualian
Objek Socket telah ditutup.
Soket yang menerima tidak mendengarkan koneksi. Anda harus menelepon Bind(EndPoint) dan Listen(Int32) sebelum memanggil BeginAccept(AsyncCallback, Object).
-atau-
Soket yang diterima terikat.
receiveSize
kurang dari 0.
.NET Framework dan .NET 5 dan yang lebih lama saja: Terjadi kesalahan saat mencoba mengakses soket.
Keterangan
Penting
Ini adalah API kompatibilitas. Kami tidak merekomendasikan penggunaan metode APM (Begin*
dan End*
) untuk pengembangan baru. Sebagai gantinya Task
, gunakan setara berbasis.
Protokol berorientasi koneksi dapat menggunakan BeginAccept metode untuk mulai menerima upaya koneksi masuk. Operasi penerimaan yang dihasilkan diwakili oleh yang dikembalikan IAsyncResult meskipun dapat selesai secara sinkron. Sebelum memanggil BeginAccept metode , Anda harus memanggil Listen metode untuk mendengarkan dan mengantre permintaan koneksi masuk.
Anda dapat meneruskan panggilan balik yang diterapkan AsyncCallback untuk BeginAccept mendapatkan pemberitahuan tentang penyelesaian operasi terima. Perhatikan bahwa jika tumpukan jaringan yang mendasar menyelesaikan operasi secara sinkron, panggilan balik mungkin dijalankan sebaris, selama panggilan ke BeginAccept. Dalam hal ini, CompletedSynchronously properti pada yang dikembalikan IAsyncResult akan diatur ke true
untuk menunjukkan bahwa metode selesai secara sinkron.
AsyncState Gunakan properti dari IAsyncResult untuk mendapatkan objek status yang diteruskan ke BeginAccept metode .
Operasi BeginAccept harus diselesaikan dengan memanggil EndAccept metode . Biasanya, metode ini dipanggil oleh delegasi yang disediakan AsyncCallback . EndAccept akan memblokir utas panggilan hingga operasi selesai.
Untuk membatalkan panggilan tertunda ke BeginAccept metode , tutup Socket. Ketika metode dipanggil Close saat operasi asinkron sedang berlangsung, panggilan balik yang diberikan ke BeginAccept metode dipanggil. Panggilan berikutnya ke EndAccept metode akan melempar ObjectDisposedException (sebelum .NET 7) atau SocketException (pada .NET 7+) untuk menunjukkan bahwa operasi telah dibatalkan.
Catatan
Anda dapat menggunakan RemoteEndPoint properti yang dikembalikan Socket untuk mengidentifikasi alamat jaringan host jarak jauh dan nomor port.
Catatan
Jika Anda menerima SocketException, gunakan SocketException.ErrorCode properti untuk mendapatkan kode kesalahan tertentu.
Catatan
Anggota ini mengeluarkan informasi pelacakan saat Anda mengaktifkan pelacakan jaringan di aplikasi Anda. Untuk informasi selengkapnya, lihat Pelacakan Jaringan di .NET Framework.
Catatan
Konteks eksekusi (konteks keamanan, pengguna yang ditiru, dan konteks panggilan) di-cache untuk metode asinkron Socket . Setelah penggunaan pertama konteks tertentu (metode asinkron Socket tertentu, instans tertentu Socket , dan panggilan balik tertentu), penggunaan konteks tersebut berikutnya akan melihat peningkatan performa.
Lihat juga
- Listen(Int32)
- AsyncCallback
- EndAccept(IAsyncResult)
- Socket
- RemoteEndPoint
- Contoh Soket Klien Asinkron
- Contoh Soket Server Asinkron