Bagikan melalui


Socket.ConnectAsync Metode

Definisi

Memulai permintaan asinkron untuk koneksi ke host jarak jauh.

Overload

ConnectAsync(SocketType, ProtocolType, SocketAsyncEventArgs)

Memulai permintaan asinkron untuk koneksi ke host jarak jauh.

ConnectAsync(IPAddress[], Int32, CancellationToken)

Membuat koneksi ke host jarak jauh.

ConnectAsync(String, Int32, CancellationToken)

Membuat koneksi ke host jarak jauh.

ConnectAsync(IPAddress, Int32, CancellationToken)

Membuat koneksi ke host jarak jauh.

ConnectAsync(String, Int32)

Membuat koneksi ke host jarak jauh.

ConnectAsync(IPAddress[], Int32)

Membuat koneksi ke host jarak jauh.

ConnectAsync(IPAddress, Int32)

Membuat koneksi ke host jarak jauh.

ConnectAsync(EndPoint, CancellationToken)

Membuat koneksi ke host jarak jauh.

ConnectAsync(SocketAsyncEventArgs)

Memulai permintaan asinkron untuk koneksi ke host jarak jauh.

ConnectAsync(EndPoint)

Membuat koneksi ke host jarak jauh.

ConnectAsync(SocketType, ProtocolType, SocketAsyncEventArgs)

Sumber:
Socket.cs
Sumber:
Socket.cs
Sumber:
Socket.cs

Memulai permintaan asinkron untuk koneksi ke host jarak jauh.

public:
 static bool ConnectAsync(System::Net::Sockets::SocketType socketType, System::Net::Sockets::ProtocolType protocolType, System::Net::Sockets::SocketAsyncEventArgs ^ e);
public static bool ConnectAsync (System.Net.Sockets.SocketType socketType, System.Net.Sockets.ProtocolType protocolType, System.Net.Sockets.SocketAsyncEventArgs e);
static member ConnectAsync : System.Net.Sockets.SocketType * System.Net.Sockets.ProtocolType * System.Net.Sockets.SocketAsyncEventArgs -> bool
Public Shared Function ConnectAsync (socketType As SocketType, protocolType As ProtocolType, e As SocketAsyncEventArgs) As Boolean

Parameter

socketType
SocketType

Salah SocketType satu nilai.

protocolType
ProtocolType

Salah ProtocolType satu nilai.

e
SocketAsyncEventArgs

Objek SocketAsyncEventArgs yang digunakan untuk operasi soket asinkron ini.

Mengembalikan

true jika operasi I/O tertunda. Peristiwa Completed pada e parameter akan dinaikkan setelah menyelesaikan operasi.

false jika operasi I/O selesai secara sinkron. Dalam hal ini, Peristiwa Completed pada e parameter tidak akan dinaikkan dan e objek yang diteruskan sebagai parameter dapat diperiksa segera setelah panggilan metode kembali untuk mengambil hasil operasi.

Pengecualian

Argumen tidak valid. Pengecualian ini terjadi jika beberapa buffer ditentukan, BufferList properti tidak null.

Parameter e tidak boleh null dan RemoteEndPoint tidak boleh null.

Socket sedang mendengarkan atau operasi soket sudah berlangsung menggunakan SocketAsyncEventArgs objek yang ditentukan dalam e parameter .

Terjadi kesalahan saat mencoba mengakses soket.

Titik akhir lokal dan RemoteEndPoint bukan keluarga alamat yang sama.

Penelepon yang lebih tinggi dalam tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Keterangan

Jika Anda menggunakan protokol berorientasi koneksi, metode M:System.Net.Sockets.Socket.ConnectAsync(System.Net.Sockets.SocketType,System.Net.Sockets.ProtocolType,System.Net.Sockets.Sockets.SocketAsyncEventArgs) memulai permintaan asinkron untuk koneksi ke host jarak jauh. Jika Anda menggunakan protokol tanpa koneksi, ConnectAsync buat host jarak jauh default yang ditentukan oleh socketType parameter dan protocolType .

Untuk diberi tahu tentang penyelesaian, Anda harus membuat metode panggilan balik yang mengimplementasikan delegasi EventHandler<SocketAsyncEventArgs> dan melampirkan panggilan balik ke SocketAsyncEventArgs.Completed acara.

Pemanggil harus mengatur SocketAsyncEventArgs.RemoteEndPoint properti ke IPEndPoint host jarak jauh untuk disambungkan.

Pemanggil dapat mengatur SocketAsyncEventArgs.UserToken properti ke objek status pengguna apa pun yang diinginkan sebelum memanggil ConnectAsync metode , sehingga informasi akan dapat diambil dalam metode panggilan balik. Jika panggilan balik membutuhkan lebih banyak informasi daripada satu objek, kelas kecil dapat dibuat untuk menyimpan informasi status lain yang diperlukan sebagai anggota.

Jika Anda menggunakan protokol tanpa koneksi seperti UDP, Anda tidak perlu menelepon ConnectAsync sebelum mengirim dan menerima data. Anda dapat menggunakan SendToAsync dan ReceiveFromAsync untuk berkomunikasi dengan host jarak jauh. Jika Anda memanggil ConnectAsync, datagram apa pun yang berasal dari alamat selain default yang ditentukan akan dibuang. Jika Anda ingin mengubah host jarak jauh default, panggil ConnectAsync metode lagi dengan titik akhir yang diinginkan.

Jika Anda ingin mengatur host jarak jauh default ke alamat siaran, Anda harus terlebih dahulu memanggil SetSocketOption dan mengatur Siaran ke true. Jika ini tidak dilakukan, ConnectAsync metode akan melempar .SocketException

Properti dan peristiwa berikut pada System.Net.Sockets.SocketAsyncEventArgs objek diperlukan:

Secara opsional, buffer dapat disediakan yang secara atomik akan dikirim pada soket setelah ConnectAsync metode berhasil. Dalam hal ini, SocketAsyncEventArgs.Buffer properti perlu diatur ke buffer yang berisi data untuk dikirim dan SocketAsyncEventArgs.Count properti perlu diatur ke jumlah byte data yang akan dikirim dari buffer. Setelah koneksi dibuat, buffer data ini dikirim.

Jika Anda menggunakan protokol berorientasi koneksi dan tidak menelepon Bind sebelum memanggil ConnectAsync, 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 IP jaringan lokal dan nomor port hingga Anda memanggil SendAsync metode atau ReceiveAsync .

Metode ini ConnectAsync melemparkan NotSupportedException jika keluarga Socket alamat dan SocketAsyncEventArgs.RemoteEndPoint bukan keluarga alamat yang sama.

Catatan

Jika Anda menerima SocketException saat memanggil metode ini, gunakan SocketException.ErrorCode properti untuk mendapatkan kode kesalahan tertentu. Setelah Anda mendapatkan kode ini, lihat dokumentasi kode kesalahan API Windows Sockets versi 2 untuk deskripsi terperinci tentang kesalahan tersebut.

Berlaku untuk

ConnectAsync(IPAddress[], Int32, CancellationToken)

Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs

Membuat koneksi ke host jarak jauh.

public:
 System::Threading::Tasks::ValueTask ConnectAsync(cli::array <System::Net::IPAddress ^> ^ addresses, int port, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask ConnectAsync (System.Net.IPAddress[] addresses, int port, System.Threading.CancellationToken cancellationToken);
member this.ConnectAsync : System.Net.IPAddress[] * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ConnectAsync (addresses As IPAddress(), port As Integer, cancellationToken As CancellationToken) As ValueTask

Parameter

addresses
IPAddress[]

Daftar IPAddresses untuk host jarak jauh yang akan digunakan untuk mencoba menyambungkan ke host jarak jauh.

port
Int32

Port pada host jarak jauh untuk disambungkan.

cancellationToken
CancellationToken

Token pembatalan yang dapat digunakan untuk membatalkan operasi asinkron.

Mengembalikan

Tugas asinkron yang selesai saat koneksi dibuat.

Pengecualian

Parameter addresses tidak boleh null.

Parameter addresses tidak boleh kosong array.

port kurang dari MinPort.

-atau-

port lebih besar dari MaxPort.

Soket tidak ada di InterNetwork dalam atau InterNetworkV6 keluarga.

Terjadi kesalahan saat mencoba mengakses soket.

Penelepon yang lebih tinggi dalam tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Token pembatalan dibatalkan. Pengecualian ini disimpan ke dalam tugas yang dikembalikan.

Keterangan

Metode ini disimpan dalam tugas yang mengembalikan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Connect(IPAddress[], Int32).

Berlaku untuk

ConnectAsync(String, Int32, CancellationToken)

Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs

Membuat koneksi ke host jarak jauh.

public:
 System::Threading::Tasks::ValueTask ConnectAsync(System::String ^ host, int port, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask ConnectAsync (string host, int port, System.Threading.CancellationToken cancellationToken);
member this.ConnectAsync : string * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ConnectAsync (host As String, port As Integer, cancellationToken As CancellationToken) As ValueTask

Parameter

host
String

Nama host host jarak jauh untuk disambungkan.

port
Int32

Port pada host jarak jauh untuk disambungkan.

cancellationToken
CancellationToken

Token pembatalan yang dapat digunakan untuk membatalkan operasi asinkron.

Mengembalikan

Tugas asinkron yang selesai ketika koneksi dibuat.

Pengecualian

Parameter host tidak boleh null.

port kurang dari MinPort.

-atau-

port lebih besar dari MaxPort.

Soket tidak ada di InterNetwork dalam atau InterNetworkV6 keluarga.

Terjadi kesalahan saat mencoba mengakses soket.

Penelepon yang lebih tinggi dalam tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Token pembatalan dibatalkan. Pengecualian ini disimpan ke dalam tugas yang dikembalikan.

Keterangan

Metode ini disimpan dalam tugas yang mengembalikan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Connect(String, Int32).

Berlaku untuk

ConnectAsync(IPAddress, Int32, CancellationToken)

Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs

Membuat koneksi ke host jarak jauh.

public:
 System::Threading::Tasks::ValueTask ConnectAsync(System::Net::IPAddress ^ address, int port, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask ConnectAsync (System.Net.IPAddress address, int port, System.Threading.CancellationToken cancellationToken);
member this.ConnectAsync : System.Net.IPAddress * int * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ConnectAsync (address As IPAddress, port As Integer, cancellationToken As CancellationToken) As ValueTask

Parameter

address
IPAddress

IPAddress host jarak jauh untuk disambungkan.

port
Int32

Port pada host jarak jauh untuk disambungkan.

cancellationToken
CancellationToken

Token pembatalan yang dapat digunakan untuk membatalkan operasi asinkron.

Mengembalikan

Tugas asinkron yang selesai ketika koneksi dibuat.

Pengecualian

Parameter address tidak boleh null.

port kurang dari MinPort.

-atau-

port lebih besar dari MaxPort.

Ini Socket mendengarkan.

Terjadi kesalahan saat mencoba mengakses soket.

Penelepon yang lebih tinggi di tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Token pembatalan dibatalkan. Pengecualian ini disimpan ke dalam tugas yang dikembalikan.

Keterangan

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Connect(IPAddress, Int32).

Berlaku untuk

ConnectAsync(String, Int32)

Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs

Membuat koneksi ke host jarak jauh.

public:
 System::Threading::Tasks::Task ^ ConnectAsync(System::String ^ host, int port);
public System.Threading.Tasks.Task ConnectAsync (string host, int port);
member this.ConnectAsync : string * int -> System.Threading.Tasks.Task
Public Function ConnectAsync (host As String, port As Integer) As Task

Parameter

host
String

Nama host host jarak jauh untuk disambungkan.

port
Int32

Port pada host jarak jauh untuk disambungkan.

Mengembalikan

Tugas asinkron yang selesai ketika koneksi dibuat.

Pengecualian

Parameter host tidak boleh null.

port kurang dari MinPort.

-atau-

port lebih besar dari MaxPort.

Ini Socket mendengarkan.

Soket tidak ada dalam InterNetwork keluarga atau InterNetworkV6 .

Terjadi kesalahan saat mencoba mengakses soket.

Penelepon yang lebih tinggi di tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Keterangan

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Connect(String, Int32).

Berlaku untuk

ConnectAsync(IPAddress[], Int32)

Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs

Membuat koneksi ke host jarak jauh.

public:
 System::Threading::Tasks::Task ^ ConnectAsync(cli::array <System::Net::IPAddress ^> ^ addresses, int port);
public System.Threading.Tasks.Task ConnectAsync (System.Net.IPAddress[] addresses, int port);
member this.ConnectAsync : System.Net.IPAddress[] * int -> System.Threading.Tasks.Task
Public Function ConnectAsync (addresses As IPAddress(), port As Integer) As Task

Parameter

addresses
IPAddress[]

Daftar IPAddresses untuk host jarak jauh yang akan digunakan untuk mencoba menyambungkan ke host jarak jauh.

port
Int32

Port pada host jarak jauh untuk disambungkan.

Mengembalikan

Tugas asinkron yang selesai ketika koneksi dibuat.

Pengecualian

Parameter addresses tidak boleh null.

Parameter addresses tidak boleh berupa array kosong.

port kurang dari MinPort.

-atau-

port lebih besar dari MaxPort.

Ini Socket mendengarkan.

Soket tidak ada dalam InterNetwork keluarga atau InterNetworkV6 .

Terjadi kesalahan saat mencoba mengakses soket.

Penelepon yang lebih tinggi di tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Keterangan

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Connect(IPAddress[], Int32).

Berlaku untuk

ConnectAsync(IPAddress, Int32)

Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs

Membuat koneksi ke host jarak jauh.

public:
 System::Threading::Tasks::Task ^ ConnectAsync(System::Net::IPAddress ^ address, int port);
public System.Threading.Tasks.Task ConnectAsync (System.Net.IPAddress address, int port);
member this.ConnectAsync : System.Net.IPAddress * int -> System.Threading.Tasks.Task
Public Function ConnectAsync (address As IPAddress, port As Integer) As Task

Parameter

address
IPAddress

IPAddress host jarak jauh untuk disambungkan.

port
Int32

Port pada host jarak jauh untuk disambungkan.

Mengembalikan

Tugas asinkron yang selesai ketika koneksi dibuat.

Pengecualian

Parameter address tidak boleh null.

port kurang dari MinPort.

-atau-

port lebih besar dari MaxPort.

Ini Socket mendengarkan.

Soket tidak ada dalam InterNetwork keluarga atau InterNetworkV6 .

Terjadi kesalahan saat mencoba mengakses soket.

Penelepon yang lebih tinggi di tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Keterangan

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Connect(IPAddress, Int32).

Berlaku untuk

ConnectAsync(EndPoint, CancellationToken)

Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs

Membuat koneksi ke host jarak jauh.

public:
 System::Threading::Tasks::ValueTask ConnectAsync(System::Net::EndPoint ^ remoteEP, System::Threading::CancellationToken cancellationToken);
public System.Threading.Tasks.ValueTask ConnectAsync (System.Net.EndPoint remoteEP, System.Threading.CancellationToken cancellationToken);
member this.ConnectAsync : System.Net.EndPoint * System.Threading.CancellationToken -> System.Threading.Tasks.ValueTask
Public Function ConnectAsync (remoteEP As EndPoint, cancellationToken As CancellationToken) As ValueTask

Parameter

remoteEP
EndPoint

Titik akhir untuk terhubung.

cancellationToken
CancellationToken

Token pembatalan yang dapat digunakan untuk membatalkan operasi asinkron.

Mengembalikan

Tugas asinkron yang selesai ketika koneksi dibuat.

Pengecualian

Parameter remoteEP tidak boleh null.

Ini Socket mendengarkan.

Terjadi kesalahan saat mencoba mengakses soket.

Titik akhir lokal dan remoteEP parameter bukan keluarga alamat yang sama.

Penelepon yang lebih tinggi di tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Token pembatalan dibatalkan. Pengecualian ini disimpan ke dalam tugas yang dikembalikan.

Keterangan

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Connect(EndPoint).

Berlaku untuk

ConnectAsync(SocketAsyncEventArgs)

Sumber:
Socket.cs
Sumber:
Socket.cs
Sumber:
Socket.cs

Memulai permintaan asinkron untuk koneksi ke host jarak jauh.

public:
 bool ConnectAsync(System::Net::Sockets::SocketAsyncEventArgs ^ e);
public bool ConnectAsync (System.Net.Sockets.SocketAsyncEventArgs e);
member this.ConnectAsync : System.Net.Sockets.SocketAsyncEventArgs -> bool
Public Function ConnectAsync (e As SocketAsyncEventArgs) As Boolean

Parameter

e
SocketAsyncEventArgs

Objek SocketAsyncEventArgs yang digunakan untuk operasi soket asinkron ini.

Mengembalikan

true jika operasi I/O tertunda. Peristiwa Completed pada e parameter akan dinaikkan setelah menyelesaikan operasi.

false jika operasi I/O selesai secara sinkron. Dalam hal ini, Peristiwa Completed pada e parameter tidak akan dinaikkan dan e objek yang diteruskan sebagai parameter dapat diperiksa segera setelah panggilan metode kembali untuk mengambil hasil operasi.

Pengecualian

Argumen tidak valid. Pengecualian ini terjadi jika beberapa buffer ditentukan, BufferList properti tidak null.

Parameter e tidak boleh null dan RemoteEndPoint tidak boleh null.

Socket sedang mendengarkan atau operasi soket sudah berlangsung menggunakan SocketAsyncEventArgs objek yang ditentukan dalam e parameter .

Terjadi kesalahan saat mencoba mengakses soket.

Titik akhir lokal dan RemoteEndPoint bukan keluarga alamat yang sama.

Penelepon yang lebih tinggi di tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Keterangan

Jika Anda menggunakan protokol berorientasi koneksi, ConnectAsync metode memulai permintaan asinkron untuk koneksi ke host jarak jauh. Jika Anda menggunakan protokol tanpa koneksi, ConnectAsync buat host jarak jauh default.

Untuk diberi tahu tentang penyelesaian, Anda harus membuat metode panggilan balik yang mengimplementasikan delegasi EventHandler<SocketAsyncEventArgs> dan melampirkan panggilan balik ke SocketAsyncEventArgs.Completed peristiwa.

Penelepon harus mengatur SocketAsyncEventArgs.RemoteEndPoint properti ke IPEndPoint host jarak jauh untuk disambungkan.

Penelepon dapat mengatur SocketAsyncEventArgs.UserToken properti ke objek status pengguna apa pun yang diinginkan sebelum memanggil ConnectAsync metode , sehingga informasi akan dapat diambil dalam metode panggilan balik. Jika panggilan balik membutuhkan lebih banyak informasi daripada satu objek, kelas kecil dapat dibuat untuk menyimpan informasi status lain yang diperlukan sebagai anggota.

Jika Anda menggunakan protokol tanpa koneksi seperti UDP, Anda tidak perlu memanggil ConnectAsync sebelum mengirim dan menerima data. Anda dapat menggunakan SendToAsync dan ReceiveFromAsync untuk berkomunikasi dengan host jarak jauh. Jika Anda memanggil ConnectAsync, datagram apa pun yang berasal dari alamat selain default yang ditentukan akan dibuang. Jika Anda ingin mengubah host jarak jauh default, panggil ConnectAsync metode lagi dengan titik akhir yang diinginkan.

Jika Anda ingin mengatur host jarak jauh default ke alamat siaran, Anda harus terlebih dahulu memanggil SetSocketOption dan mengatur Siaran ke true. Jika ini tidak dilakukan, ConnectAsync metode akan melempar SocketException.

Properti dan peristiwa berikut pada System.Net.Sockets.SocketAsyncEventArgs objek diperlukan:

Secara opsional, buffer dapat disediakan yang secara atomik akan dikirim pada soket setelah ConnectAsync metode berhasil. Dalam hal ini, SocketAsyncEventArgs.Buffer properti perlu diatur ke buffer yang berisi data yang akan dikirim dan SocketAsyncEventArgs.Count properti perlu diatur ke jumlah byte data yang akan dikirim dari buffer. Setelah koneksi dibuat, buffer data ini dikirim.

Jika Anda menggunakan protokol berorientasi koneksi dan tidak memanggil Bind sebelum memanggil ConnectAsync, penyedia layanan yang mendasar akan menetapkan alamat jaringan lokal dan nomor port yang paling tepat.

Jika Anda menggunakan protokol tanpa koneksi, penyedia layanan tidak akan menetapkan alamat IP jaringan lokal dan nomor port hingga Anda memanggil SendAsync metode atau ReceiveAsync .

Metode ini ConnectAsync melemparkan NotSupportedException jika keluarga Socket alamat dan SocketAsyncEventArgs.RemoteEndPoint bukan keluarga alamat yang sama.

Catatan

Jika Anda menerima SocketException saat memanggil metode ini, gunakan SocketException.ErrorCode properti untuk mendapatkan kode kesalahan tertentu. Setelah Anda mendapatkan kode ini, lihat dokumentasi kode kesalahan API Windows Sockets versi 2 untuk deskripsi terperinci tentang kesalahan tersebut.

Lihat juga

Berlaku untuk

ConnectAsync(EndPoint)

Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs
Sumber:
Socket.Tasks.cs

Membuat koneksi ke host jarak jauh.

public:
 System::Threading::Tasks::Task ^ ConnectAsync(System::Net::EndPoint ^ remoteEP);
public System.Threading.Tasks.Task ConnectAsync (System.Net.EndPoint remoteEP);
member this.ConnectAsync : System.Net.EndPoint -> System.Threading.Tasks.Task
Public Function ConnectAsync (remoteEP As EndPoint) As Task

Parameter

remoteEP
EndPoint

Titik akhir untuk terhubung.

Mengembalikan

Tugas asinkron yang selesai ketika koneksi dibuat.

Pengecualian

Parameter remoteEP tidak boleh null.

Ini Socket mendengarkan.

Terjadi kesalahan saat mencoba mengakses soket.

Titik akhir lokal dan remoteEP parameter bukan keluarga alamat yang sama.

Penelepon yang lebih tinggi di tumpukan panggilan tidak memiliki izin untuk operasi yang diminta.

Keterangan

Metode ini disimpan dalam tugas yang menampilkan semua pengecualian non-penggunaan yang dapat dilemparkan oleh rekan sinkron metode. Jika pengecualian disimpan ke dalam tugas yang dikembalikan, pengecualian tersebut akan dilemparkan saat tugas ditunggu. Pengecualian penggunaan, seperti ArgumentException, masih dilemparkan secara sinkron. Untuk pengecualian yang disimpan, lihat pengecualian yang dilemparkan oleh Connect(EndPoint).

Berlaku untuk