Share via


TcpClient.LingerState Properti

Definisi

Mendapatkan atau mengatur informasi tentang status yang masih ada dari soket terkait.

public:
 property System::Net::Sockets::LingerOption ^ LingerState { System::Net::Sockets::LingerOption ^ get(); void set(System::Net::Sockets::LingerOption ^ value); };
public System.Net.Sockets.LingerOption? LingerState { get; set; }
public System.Net.Sockets.LingerOption LingerState { get; set; }
member this.LingerState : System.Net.Sockets.LingerOption with get, set
Public Property LingerState As LingerOption

Nilai Properti

LingerOption. Secara default, berlama-waktu dinonaktifkan.

Contoh

Contoh kode berikut menetapkan dan mendapatkan waktu lama soket.

// sets the amount of time to linger after closing, using the LingerOption public property.
LingerOption^ lingerOption = gcnew LingerOption( true,10 );
tcpClient->LingerState = lingerOption;

// gets the amount of linger time set, using the LingerOption public property.
if ( tcpClient->LingerState->LingerTime == 10 )
      Console::WriteLine( "The linger state setting was successfully set to {0}", tcpClient->LingerState->LingerTime );
// sets the amount of time to linger after closing, using the LingerOption public property.
LingerOption lingerOption = new LingerOption (true, 10);

tcpClient.LingerState = lingerOption;

// gets the amount of linger time set, using the LingerOption public property.
if (tcpClient.LingerState.LingerTime == 10)
    Console.WriteLine ("The linger state setting was successfully set to " + tcpClient.LingerState.LingerTime.ToString ());
' Sets the amount of time to linger after closing, using the LingerOption public property.
Dim lingerOption As New LingerOption(True, 10)
tcpClient.LingerState = lingerOption

' Gets the amount of linger time set, using the LingerOption public property.
If tcpClient.LingerState.LingerTime = 10 Then
   Console.WriteLine(("The linger state setting was successfully set to " + tcpClient.LingerState.LingerTime.ToString()))
End If

Keterangan

Properti LingerState mengubah perilaku Close metode. Properti ini ketika diatur memodifikasi kondisi di mana koneksi dapat diatur ulang oleh Winsock. Reset koneksi masih dapat terjadi berdasarkan perilaku protokol IP.

Properti ini mengontrol lamanya waktu koneksi TCP akan tetap terbuka setelah panggilan ke Close ketika data tetap dikirim. Saat Anda memanggil Write metode , data ditempatkan di buffer jaringan keluar. Properti ini dapat digunakan untuk memastikan bahwa data ini dikirim ke host jarak jauh sebelum Close metode menghilangkan koneksi.

Untuk mengaktifkan berlama-lama, buat instans yang berisi nilai yang LingerOption diinginkan, dan atur LingerState properti ke instans ini.

Tabel berikut ini menjelaskan perilaku Close metode untuk kemungkinan nilai Enabled properti dan properti yang LingerTime disimpan di LingerState properti .

LingerState.Enabled LingerState.LingerTime Aktivitas
false (dinonaktifkan), nilai default Waktu habis tidak berlaku, (default). Upaya untuk mengirim data yang tertunda hingga waktu habis protokol IP default kedaluwarsa.
true (diaktifkan) Batas waktu nonzero Mencoba mengirim data yang tertunda hingga waktu habis yang ditentukan berakhir, dan jika upaya gagal, Maka Winsock mengatur ulang koneksi.
true (diaktifkan) Batas waktu nol. Membuang data yang tertunda dan Winsock mengatur ulang koneksi.

Tumpukan IP menghitung periode waktu habis protokol IP default untuk digunakan berdasarkan waktu pulang pergi koneksi. Dalam kebanyakan kasus, waktu habis yang dihitung oleh tumpukan lebih relevan daripada yang ditentukan oleh aplikasi. Ini adalah perilaku default untuk soket ketika LingerState properti tidak diatur.

Ketika properti yang LingerTime disimpan dalam LingerState properti diatur lebih besar dari waktu habis protokol IP default, waktu habis protokol IP default akan tetap berlaku dan menimpa.

Berlaku untuk

Lihat juga