Bagikan melalui


Socket.BeginConnect Metode

Definisi

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

remoteEP
EndPoint

Yang EndPoint mewakili host jarak jauh.

callback
AsyncCallback

Delegasi AsyncCallback .

state
Object

Objek yang berisi informasi status untuk permintaan ini.

Mengembalikan

Yang IAsyncResult mereferensikan koneksi asinkron.

Pengecualian

remoteEPadalah null.

.NET Framework dan .NET 5 dan yang lebih lama saja: Terjadi kesalahan saat mencoba mengakses soket.

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

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

address
IPAddress

Host IPAddress 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

addressadalah null.

.NET Framework dan .NET 5 dan yang lebih lama saja: Terjadi kesalahan saat mencoba mengakses soket.

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

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

addresses
IPAddress[]

Setidaknya satu IPAddress, menunjuk 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

addressesadalah null.

.NET Framework dan .NET 5 dan yang lebih lama saja: Terjadi kesalahan saat mencoba mengakses soket.

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

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

hostadalah null.

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

Berlaku untuk