TcpClient.LingerState Properti
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.
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.