Bagikan melalui


LingerOption(Boolean, Int32) Konstruktor

Definisi

Menginisialisasi instans baru dari kelas LingerOption.

public:
 LingerOption(bool enable, int seconds);
public LingerOption(bool enable, int seconds);
new System.Net.Sockets.LingerOption : bool * int -> System.Net.Sockets.LingerOption
Public Sub New (enable As Boolean, seconds As Integer)

Parameter

enable
Boolean

true untuk tetap terhubung setelah metode dipanggil Close() ; jika tidak, false.

seconds
Int32

Jumlah detik untuk tetap terhubung setelah metode dipanggil Close() .

Contoh

Contoh berikut mengatur yang sebelumnya dibuat Socket untuk berlama-lama satu detik setelah memanggil Close metode .

LingerOption myOpts = new LingerOption(true,1);

mySocket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, myOpts);
Dim myOpts As New LingerOption(True, 1)
       
mySocket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Linger, _
   myOpts)

Keterangan

Mungkin masih ada data yang tersedia di buffer jaringan keluar setelah Anda menutup Socket. enable Gunakan parameter untuk menentukan apakah Anda ingin Socket terus mengirimkan data yang tidak dikirim setelah metode tutup dipanggil. seconds Gunakan parameter untuk menunjukkan berapa lama Anda ingin Socket mencoba mentransfer data yang tidak ditransfer sebelum waktu habis. Jika Anda menentukan true parameter enable dan 0 untuk seconds parameter , Socket akan mencoba mengirim data sampai tidak ada data yang tersisa di buffer jaringan keluar. Jika Anda menentukan false untuk enable parameter , Socket akan segera ditutup dan data yang tidak terkiror akan hilang.

Tabel berikut menjelaskan perilaku pada Socket.Close metode dan TcpClient.Close berdasarkan kemungkinan nilai enable parameter dan seconds ketika instans T:System.Net.Sockets.LingerOption dibuat dan diatur dalam Socket.LingerState properti atau TcpClient.LingerState .

enable seconds Perilaku
false (dinonaktifkan), nilai default Waktu habis tidak berlaku, (default). Upaya untuk mengirim data yang tertunda untuk soket berorientasi koneksi (TCP, misalnya) hingga batas waktu protokol IP default kedaluwarsa.
true (diaktifkan) Batas waktu nonzero Mencoba mengirim data yang tertunda hingga waktu habis yang ditentukan kedaluwarsa, dan jika upaya gagal, maka Winsock mengatur ulang koneksi.
true (diaktifkan) Batas waktu nol. Membuang data yang tertunda. Untuk soket berorientasi koneksi (TCP, misalnya), 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 batas waktu protokol IP default, batas waktu protokol IP default masih akan berlaku dan diambil alih.

Berlaku untuk