Socket.BeginConnect 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 permintaan asinkron untuk koneksi host jarak jauh.
Overload
BeginConnect(EndPoint, AsyncCallback, Object) |
Memulai permintaan asinkron untuk koneksi host jarak jauh. |
BeginConnect(IPAddress, Int32, AsyncCallback, Object) |
Memulai permintaan asinkron untuk koneksi host jarak jauh. Host ditentukan oleh dan IPAddress nomor port. |
BeginConnect(IPAddress[], Int32, AsyncCallback, Object) |
Memulai permintaan asinkron untuk koneksi host jarak jauh. Host ditentukan oleh IPAddress array dan nomor port. |
BeginConnect(String, Int32, AsyncCallback, Object) |
Memulai permintaan asinkron untuk koneksi host jarak jauh. Host ditentukan oleh nama host dan nomor port. |
BeginConnect(EndPoint, AsyncCallback, Object)
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
Memulai permintaan asinkron untuk koneksi host jarak jauh.
public:
IAsyncResult ^ BeginConnect(System::Net::EndPoint ^ remoteEP, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginConnect (System.Net.EndPoint remoteEP, AsyncCallback? callback, object? state);
public IAsyncResult BeginConnect (System.Net.EndPoint remoteEP, AsyncCallback callback, object state);
member this.BeginConnect : System.Net.EndPoint * AsyncCallback * obj -> IAsyncResult
Public Function BeginConnect (remoteEP As EndPoint, 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 koneksi asinkron.
Pengecualian
remoteEP
adalah null
.
.NET Framework dan .NET 5 dan yang lebih lama saja: Terjadi kesalahan saat mencoba mengakses soket.
Sudah Socket ditutup.
Penelepon yang lebih tinggi dalam tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.
Socket telah ditempatkan dalam status mendengarkan dengan memanggil Listen(Int32), atau operasi asinkron sudah berlangsung.
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 AsyncCallbackBeginAccept untuk 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 untuk IAsyncResult 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. Close Ketika metode dipanggil 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 dan nomor port host jarak jauh.
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
- AsyncCallback
- EndConnect(IAsyncResult)
- BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Penyusunan Delegasi sebagai Metode Panggilan Balik
- Contoh Soket Klien Asinkron
- Contoh Soket Server Asinkron
Berlaku untuk
BeginConnect(IPAddress, Int32, AsyncCallback, Object)
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
Memulai permintaan asinkron untuk koneksi host jarak jauh. Host ditentukan oleh dan IPAddress nomor port.
public:
IAsyncResult ^ BeginConnect(System::Net::IPAddress ^ address, int port, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginConnect (System.Net.IPAddress address, int port, AsyncCallback? requestCallback, object? state);
public IAsyncResult BeginConnect (System.Net.IPAddress address, int port, AsyncCallback requestCallback, object state);
member this.BeginConnect : System.Net.IPAddress * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginConnect (address As IPAddress, port As Integer, requestCallback As AsyncCallback, state As Object) As IAsyncResult
Parameter
- port
- Int32
Nomor port host jarak jauh.
- requestCallback
- AsyncCallback
Delegasi AsyncCallback yang mereferensikan metode yang akan dipanggil saat operasi sambungkan selesai.
- state
- Object
Objek yang ditentukan pengguna yang berisi informasi tentang operasi sambungkan. Objek ini diteruskan ke requestCallback
delegasi ketika operasi selesai.
Mengembalikan
Yang IAsyncResult mereferensikan koneksi asinkron.
Pengecualian
address
adalah null
.
.NET Framework dan .NET 5 dan yang lebih lama saja: Terjadi kesalahan saat mencoba mengakses soket.
Sudah Socket ditutup.
Socket tidak ada dalam keluarga soket.
Nomor port tidak valid.
Panjangnya address
adalah nol.
Socket telah ditempatkan dalam status mendengarkan dengan memanggil Listen(Int32), atau operasi asinkron sudah berlangsung.
Keterangan
Penting
Ini adalah API kompatibilitas. Kami tidak merekomendasikan penggunaan metode APM (Begin*
dan End*
) untuk pengembangan baru. Sebagai gantinya Task
, gunakan setara berbasis.
Jika Anda menggunakan protokol berorientasi koneksi, BeginConnect metode memulai permintaan asinkron untuk koneksi ke endpoit yang ditentukan oleh remoteEP
parameter . Jika Anda menggunakan protokol tanpa koneksi, BeginConnect buat host jarak jauh default.
Anda dapat meneruskan panggilan balik yang diterapkan AsyncCallbackBeginConnect untuk mendapatkan pemberitahuan tentang penyelesaian operasi koneksi. Perhatikan bahwa jika tumpukan jaringan yang mendasar menyelesaikan operasi secara sinkron, panggilan balik mungkin dijalankan sebaris, selama panggilan ke BeginConnect. Dalam hal ini, CompletedSynchronously properti pada yang dikembalikan IAsyncResult akan diatur ke true
untuk menunjukkan bahwa metode selesai secara sinkron.
AsyncState Gunakan properti untuk IAsyncResult mendapatkan objek status yang diteruskan ke BeginConnect metode .
Operasi BeginConnect harus diselesaikan dengan memanggil EndConnect metode . Biasanya, metode ini dipanggil oleh delegasi yang disediakan AsyncCallback . EndConnect akan memblokir utas panggilan hingga operasi selesai.
Jika Anda menggunakan protokol tanpa koneksi seperti UDP, Anda tidak perlu menelepon BeginConnect sebelum mengirim dan menerima data. Anda dapat menggunakan BeginSendTo dan BeginReceiveFrom untuk berkomunikasi dengan host jarak jauh. Jika Anda memanggil BeginConnect, datagram apa pun yang berasal dari alamat selain default yang ditentukan akan dibuang. Jika Anda ingin mengatur host jarak jauh default Anda ke alamat siaran, Anda harus terlebih dahulu memanggil SetSocketOption dan mengatur Siaran ke true
. Jika Anda tidak bisa, BeginConnect akan melempar SocketException.
Jika Anda menggunakan protokol berorientasi koneksi dan tidak menelepon Bind sebelum memanggil BeginConnect, penyedia layanan yang mendasar akan menetapkan alamat jaringan lokal dan nomor port yang paling sesuai. Jika Anda menggunakan protokol tanpa koneksi, penyedia layanan tidak akan menetapkan alamat jaringan lokal dan nomor port hingga Anda memanggil BeginSend metode atau ReceiveFrom . Jika Anda ingin mengubah host jarak jauh default, panggil BeginConnect metode lagi dengan titik akhir yang diinginkan.
Untuk membatalkan panggilan tertunda ke BeginConnect metode , tutup Socket. Close Ketika metode dipanggil saat operasi asinkron sedang berlangsung, panggilan balik yang diberikan ke BeginConnect metode dipanggil. Panggilan berikutnya ke EndConnect metode akan melempar ObjectDisposedException (sebelum .NET 7) atau SocketException (pada .NET 7+) untuk menunjukkan bahwa operasi telah dibatalkan.
Catatan
Jika Anda menerima SocketException, gunakan SocketException.ErrorCode properti untuk mendapatkan kode kesalahan tertentu.
Catatan
Jika soket ini sebelumnya telah terputus, maka BeginConnect harus dipanggil pada utas yang tidak akan keluar sampai operasi selesai. Ini adalah batasan dari penyedia yang mendasar.
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
- AsyncCallback
- EndConnect(IAsyncResult)
- BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Penyusunan Delegasi sebagai Metode Panggilan Balik
- Contoh Soket Klien Asinkron
- Contoh Soket Server Asinkron
Berlaku untuk
BeginConnect(IPAddress[], Int32, AsyncCallback, Object)
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
Memulai permintaan asinkron untuk koneksi host jarak jauh. Host ditentukan oleh IPAddress array dan nomor port.
public:
IAsyncResult ^ BeginConnect(cli::array <System::Net::IPAddress ^> ^ addresses, int port, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginConnect (System.Net.IPAddress[] addresses, int port, AsyncCallback? requestCallback, object? state);
public IAsyncResult BeginConnect (System.Net.IPAddress[] addresses, int port, AsyncCallback requestCallback, object state);
member this.BeginConnect : System.Net.IPAddress[] * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginConnect (addresses As IPAddress(), port As Integer, requestCallback As AsyncCallback, state As Object) As IAsyncResult
Parameter
- port
- Int32
Nomor port host jarak jauh.
- requestCallback
- AsyncCallback
Delegasi AsyncCallback yang mereferensikan metode yang akan dipanggil saat operasi sambungkan selesai.
- state
- Object
Objek yang ditentukan pengguna yang berisi informasi tentang operasi sambungkan. Objek ini diteruskan ke requestCallback
delegasi ketika operasi selesai.
Mengembalikan
Yang IAsyncResult mereferensikan koneksi asinkron.
Pengecualian
addresses
adalah null
.
.NET Framework dan .NET 5 dan yang lebih lama saja: Terjadi kesalahan saat mencoba mengakses soket.
Sudah Socket ditutup.
Metode ini berlaku untuk soket yang menggunakan InterNetwork atau InterNetworkV6.
Nomor port tidak valid.
Panjangnya address
adalah nol.
Socket telah ditempatkan dalam status mendengarkan dengan memanggil Listen(Int32), atau operasi asinkron sudah berlangsung.
Keterangan
Penting
Ini adalah API kompatibilitas. Kami tidak merekomendasikan penggunaan metode APM (Begin*
dan End*
) untuk pengembangan baru. Sebagai gantinya Task
, gunakan setara berbasis.
Jika Anda menggunakan protokol berorientasi koneksi, BeginConnect metode memulai permintaan asinkron untuk koneksi ke endpoit yang ditentukan oleh remoteEP
parameter . Jika Anda menggunakan protokol tanpa koneksi, BeginConnect buat host jarak jauh default.
Anda dapat meneruskan panggilan balik yang diterapkan AsyncCallbackBeginConnect untuk mendapatkan pemberitahuan tentang penyelesaian operasi koneksi. Perhatikan bahwa jika tumpukan jaringan yang mendasar menyelesaikan operasi secara sinkron, panggilan balik mungkin dijalankan sebaris, selama panggilan ke BeginConnect. Dalam hal ini, CompletedSynchronously properti pada yang dikembalikan IAsyncResult akan diatur ke true
untuk menunjukkan bahwa metode selesai secara sinkron.
AsyncState Gunakan properti untuk IAsyncResult mendapatkan objek status yang diteruskan ke BeginConnect metode .
Operasi BeginConnect harus diselesaikan dengan memanggil EndConnect metode . Biasanya, metode ini dipanggil oleh delegasi yang disediakan AsyncCallback . EndConnect akan memblokir utas panggilan hingga operasi selesai.
Jika Anda menggunakan protokol tanpa koneksi seperti UDP, Anda tidak perlu menelepon BeginConnect sebelum mengirim dan menerima data. Anda dapat menggunakan BeginSendTo dan BeginReceiveFrom untuk berkomunikasi dengan host jarak jauh. Jika Anda memanggil BeginConnect, datagram apa pun yang berasal dari alamat selain default yang ditentukan akan dibuang. Jika Anda ingin mengatur host jarak jauh default Anda ke alamat siaran, Anda harus terlebih dahulu memanggil SetSocketOption dan mengatur Siaran ke true
. Jika Anda tidak bisa, BeginConnect akan melempar SocketException.
Jika Anda menggunakan protokol berorientasi koneksi dan tidak menelepon Bind sebelum memanggil BeginConnect, penyedia layanan yang mendasar akan menetapkan alamat jaringan lokal dan nomor port yang paling sesuai. Jika Anda menggunakan protokol tanpa koneksi, penyedia layanan tidak akan menetapkan alamat jaringan lokal dan nomor port hingga Anda memanggil BeginSend metode atau ReceiveFrom . Jika Anda ingin mengubah host jarak jauh default, panggil BeginConnect metode lagi dengan titik akhir yang diinginkan.
Untuk membatalkan panggilan tertunda ke BeginConnect metode , tutup Socket. Close Ketika metode dipanggil saat operasi asinkron sedang berlangsung, panggilan balik yang diberikan ke BeginConnect metode dipanggil. Panggilan berikutnya ke EndConnect metode akan melempar ObjectDisposedException (sebelum .NET 7) atau SocketException (pada .NET 7+) untuk menunjukkan bahwa operasi telah dibatalkan.
Catatan
Jika Anda menerima SocketException, gunakan SocketException.ErrorCode properti untuk mendapatkan kode kesalahan tertentu.
Catatan
Jika soket ini sebelumnya telah terputus, maka BeginConnect harus dipanggil pada utas yang tidak akan keluar sampai operasi selesai. Ini adalah batasan dari penyedia yang mendasar.
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
- AsyncCallback
- EndConnect(IAsyncResult)
- BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Penyusunan Delegasi sebagai Metode Panggilan Balik
- Contoh Soket Klien Asinkron
- Contoh Soket Server Asinkron
Berlaku untuk
BeginConnect(String, Int32, AsyncCallback, Object)
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
- Sumber:
- Socket.cs
Memulai permintaan asinkron untuk koneksi host jarak jauh. Host ditentukan oleh nama host dan nomor port.
public:
IAsyncResult ^ BeginConnect(System::String ^ host, int port, AsyncCallback ^ requestCallback, System::Object ^ state);
public IAsyncResult BeginConnect (string host, int port, AsyncCallback? requestCallback, object? state);
public IAsyncResult BeginConnect (string host, int port, AsyncCallback requestCallback, object state);
member this.BeginConnect : string * int * AsyncCallback * obj -> IAsyncResult
Public Function BeginConnect (host As String, port As Integer, requestCallback As AsyncCallback, state As Object) As IAsyncResult
Parameter
- host
- String
Nama host jarak jauh.
- port
- Int32
Nomor port host jarak jauh.
- requestCallback
- AsyncCallback
Delegasi AsyncCallback yang mereferensikan metode yang akan dipanggil saat operasi sambungkan selesai.
- state
- Object
Objek yang ditentukan pengguna yang berisi informasi tentang operasi sambungkan. Objek ini diteruskan ke requestCallback
delegasi ketika operasi selesai.
Mengembalikan
Yang IAsyncResult mereferensikan koneksi asinkron.
Pengecualian
host
adalah null
.
Sudah Socket ditutup.
Metode ini berlaku untuk soket dalam InterNetwork atau InterNetworkV6 keluarga.
Nomor port tidak valid.
Socket telah ditempatkan dalam status mendengarkan dengan memanggil Listen(Int32), atau operasi asinkron sudah berlangsung.
Keterangan
Penting
Ini adalah API kompatibilitas. Kami tidak merekomendasikan penggunaan metode APM (Begin*
dan End*
) untuk pengembangan baru. Sebagai gantinya Task
, gunakan setara berbasis.
Jika Anda menggunakan protokol berorientasi koneksi, BeginConnect metode memulai permintaan asinkron untuk koneksi ke endpoit yang ditentukan oleh remoteEP
parameter . Jika Anda menggunakan protokol tanpa koneksi, BeginConnect buat host jarak jauh default.
Anda dapat meneruskan panggilan balik yang diterapkan AsyncCallbackBeginConnect untuk mendapatkan pemberitahuan tentang penyelesaian operasi koneksi. Perhatikan bahwa jika tumpukan jaringan yang mendasar menyelesaikan operasi secara sinkron, panggilan balik mungkin dijalankan sebaris, selama panggilan ke BeginConnect. Dalam hal ini, CompletedSynchronously properti pada yang dikembalikan IAsyncResult akan diatur ke true
untuk menunjukkan bahwa metode selesai secara sinkron.
AsyncState Gunakan properti untuk IAsyncResult mendapatkan objek status yang diteruskan ke BeginConnect metode .
Operasi BeginConnect harus diselesaikan dengan memanggil EndConnect metode . Biasanya, metode ini dipanggil oleh delegasi yang disediakan AsyncCallback . EndConnect akan memblokir utas panggilan hingga operasi selesai.
Jika Anda menggunakan protokol tanpa koneksi seperti UDP, Anda tidak perlu menelepon BeginConnect sebelum mengirim dan menerima data. Anda dapat menggunakan BeginSendTo dan BeginReceiveFrom untuk berkomunikasi dengan host jarak jauh. Jika Anda memanggil BeginConnect, datagram apa pun yang berasal dari alamat selain default yang ditentukan akan dibuang. Jika Anda ingin mengatur host jarak jauh default Anda ke alamat siaran, Anda harus terlebih dahulu memanggil SetSocketOption dan mengatur Siaran ke true
. Jika Anda tidak bisa, BeginConnect akan melempar SocketException.
Jika Anda menggunakan protokol berorientasi koneksi dan tidak menelepon Bind sebelum memanggil BeginConnect, penyedia layanan yang mendasar akan menetapkan alamat jaringan lokal dan nomor port yang paling sesuai. Jika Anda menggunakan protokol tanpa koneksi, penyedia layanan tidak akan menetapkan alamat jaringan lokal dan nomor port hingga Anda memanggil BeginSend metode atau ReceiveFrom . Jika Anda ingin mengubah host jarak jauh default, panggil BeginConnect metode lagi dengan titik akhir yang diinginkan.
Untuk membatalkan panggilan tertunda ke BeginConnect metode , tutup Socket. Close Ketika metode dipanggil saat operasi asinkron sedang berlangsung, panggilan balik yang diberikan ke BeginConnect metode dipanggil. Panggilan berikutnya ke EndConnect metode akan melempar ObjectDisposedException (sebelum .NET 7) atau SocketException (pada .NET 7+) untuk menunjukkan bahwa operasi telah dibatalkan.
Catatan
Jika Anda menerima SocketException, gunakan SocketException.ErrorCode properti untuk mendapatkan kode kesalahan tertentu.
Catatan
Jika soket ini sebelumnya telah terputus, maka BeginConnect harus dipanggil pada utas yang tidak akan keluar sampai operasi selesai. Ini adalah batasan dari penyedia yang mendasar.
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
- AsyncCallback
- EndConnect(IAsyncResult)
- BeginSendTo(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- BeginReceiveFrom(Byte[], Int32, Int32, SocketFlags, EndPoint, AsyncCallback, Object)
- Penyusunan Delegasi sebagai Metode Panggilan Balik
- Contoh Soket Klien Asinkron
- Contoh Soket Server Asinkron