Bagikan melalui


LingerOption(Boolean, Int32) Konstruktor

Definisi

Menginisialisasi instans baru 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 menetapkan yang dibuat sebelumnya Socket untuk berlama-lama satu detik setelah memanggil Close metode .

LingerOption^ myOpts = gcnew LingerOption( true,1 );
mySocket->SetSocketOption( SocketOptionLevel::Socket, SocketOptionName::Linger, myOpts );
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 penutupan dipanggil. seconds Gunakan parameter untuk menunjukkan berapa lama Anda ingin Socket mencoba mentransfer data yang tidak dikirim sebelum waktu habis. Jika Anda menentukan true untuk enable parameter 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 terkirmankan akan hilang.

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

enable seconds Aktivitas
false (dinonaktifkan), nilai default Waktu habis tidak berlaku, (default). Upaya untuk mengirim data yang tertunda untuk soket berorientasi koneksi (TCP, misalnya) 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. 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 waktu habis protokol IP default, waktu habis protokol IP default akan tetap berlaku dan menimpa.

Berlaku untuk