Bagikan melalui


SmtpClient.Dispose Metode

Definisi

Mengirim pesan QUIT ke server SMTP, dengan anggun mengakhiri koneksi TCP, dan merilis semua sumber daya yang digunakan oleh instans SmtpClient kelas saat ini.

Overload

Dispose()

Mengirim pesan QUIT ke server SMTP, dengan anggun mengakhiri koneksi TCP, dan merilis semua sumber daya yang digunakan oleh instans SmtpClient kelas saat ini.

Dispose(Boolean)

Mengirim pesan QUIT ke server SMTP, dengan anggun mengakhiri koneksi TCP, merilis semua sumber daya yang digunakan oleh instans SmtpClient kelas saat ini, dan secara opsional membuang sumber daya terkelola.

Keterangan

Koneksi yang dibuat oleh instans SmtpClient kelas saat ini ke server SMTP dapat digunakan kembali jika aplikasi ingin mengirim beberapa pesan ke server SMTP yang sama. Ini sangat berguna ketika autentikasi atau enkripsi digunakan untuk membuat koneksi ke server SMTP. Proses autentikasi dan pembentukan sesi TLS bisa menjadi operasi yang mahal. Persyaratan untuk membuat ulang koneksi untuk setiap pesan saat mengirim email dalam jumlah besar ke server SMTP yang sama dapat berdampak signifikan pada performa. Ada sejumlah aplikasi email volume tinggi yang mengirim pembaruan status email, distribusi buletin, atau pemberitahuan email. Juga banyak aplikasi klien email yang mendukung mode off-line di mana pengguna dapat membuat banyak pesan email yang dikirim nanti ketika koneksi ke server SMTP dibuat. Biasanya klien email mengirim semua pesan SMTP ke server SMTP tertentu (disediakan oleh penyedia layanan Internet) yang kemudian meneruskan email ini ke server SMTP lainnya.

Implementasi SmtpClient kelas mengumpulkan koneksi SMTP sehingga dapat menghindari overhead membangun kembali koneksi untuk setiap pesan ke server yang sama. Aplikasi dapat menggunakan kembali objek yang sama SmtpClient untuk mengirim banyak email yang berbeda ke server SMTP yang sama dan ke banyak server SMTP yang berbeda. Akibatnya, tidak ada cara untuk menentukan kapan aplikasi selesai menggunakan SmtpClient objek dan harus dibersihkan.

Ketika sesi SMTP selesai dan klien ingin mengakhiri koneksi, ia harus mengirim pesan QUIT ke server untuk menunjukkan bahwa ia tidak memiliki lebih banyak pesan untuk dikirim. Ini memungkinkan server untuk membebaskan sumber daya yang terkait dengan koneksi dari klien dan memproses pesan yang dikirim oleh klien.

Metode ini Dispose melakukan iterasi melalui semua koneksi yang dibuat dan mengirim pesan QUIT ke setiap server SMTP, diikuti dengan mengakhiri koneksi TCP dengan baik. Metode ini juga merilis sumber daya yang tidak dikelola yang Socket digunakan oleh dan secara opsional membuang sumber daya terkelola.

Dispose()

Sumber:
SmtpClient.cs
Sumber:
SmtpClient.cs
Sumber:
SmtpClient.cs

Mengirim pesan QUIT ke server SMTP, dengan anggun mengakhiri koneksi TCP, dan merilis semua sumber daya yang digunakan oleh instans SmtpClient kelas saat ini.

public:
 virtual void Dispose();
public void Dispose ();
abstract member Dispose : unit -> unit
override this.Dispose : unit -> unit
Public Sub Dispose ()

Penerapan

Keterangan

Koneksi yang dibuat oleh instans SmtpClient kelas saat ini ke server SMTP dapat digunakan kembali jika aplikasi ingin mengirim beberapa pesan ke server SMTP yang sama. Ini sangat berguna ketika autentikasi atau enkripsi digunakan untuk membuat koneksi ke server SMTP. Proses autentikasi dan pembentukan sesi TLS bisa menjadi operasi yang mahal. Persyaratan untuk membuat ulang koneksi untuk setiap pesan saat mengirim email dalam jumlah besar ke server SMTP yang sama dapat berdampak signifikan pada performa. Ada sejumlah aplikasi email volume tinggi yang mengirim pembaruan status email, distribusi buletin, atau pemberitahuan email. Juga banyak aplikasi klien email yang mendukung mode off-line di mana pengguna dapat membuat banyak pesan email yang dikirim nanti ketika koneksi ke server SMTP dibuat. Biasanya klien email mengirim semua pesan SMTP ke server SMTP tertentu (disediakan oleh penyedia layanan Internet) yang kemudian meneruskan email ini ke server SMTP lainnya.

Implementasi SmtpClient kelas mengumpulkan koneksi SMTP sehingga dapat menghindari overhead membangun kembali koneksi untuk setiap pesan ke server yang sama. Aplikasi dapat menggunakan kembali objek yang sama SmtpClient untuk mengirim banyak email yang berbeda ke server SMTP yang sama dan ke banyak server SMTP yang berbeda. Akibatnya, tidak ada cara untuk menentukan kapan aplikasi selesai menggunakan SmtpClient objek dan harus dibersihkan.

Ketika sesi SMTP selesai dan klien ingin mengakhiri koneksi, ia harus mengirim pesan QUIT ke server untuk menunjukkan bahwa ia tidak memiliki lebih banyak pesan untuk dikirim. Ini memungkinkan server untuk membebaskan sumber daya yang terkait dengan koneksi dari klien dan memproses pesan yang dikirim oleh klien.

Memanggil Dispose metode pada SmtpClient objek yang menjalankan operasi asinkron SendAsync akan membatalkan operasi pengiriman seolah-olah SendAsyncCancel metode telah dipanggil.

Kelas SmtpClient tidak Finalize memiliki metode . Jadi aplikasi harus memanggil Dispose untuk secara eksplisit membebaskan sumber daya.

Metode ini Dispose melakukan iterasi melalui semua koneksi yang dibuat ke server SMTP yang ditentukan dalam Host properti dan mengirim pesan QUIT diikuti dengan mengakhiri koneksi TCP dengan lancar. Metode ini Dispose juga merilis sumber daya yang tidak dikelola yang digunakan oleh yang mendasar Socket.

Panggil Dispose ketika Anda selesai menggunakan SmtpClient. Metode Dispose ini meninggalkan SmtpClient dalam keadaan tidak dapat digunakan. Setelah memanggil Dispose, Anda harus merilis semua referensi ke SmtpClient sehingga pengumpul sampah dapat mengklaim kembali memori yang SmtpClient diduduki.

Untuk informasi selengkapnya, lihat Membersihkan Sumber Daya yang Tidak Dikelola dan Menerapkan Metode Buang.

Catatan

Selalu panggil Dispose sebelum Anda merilis referensi terakhir Anda ke SmtpClient. Jika tidak, sumber daya yang digunakan tidak akan dikosongkan sehingga pengumpul sampah dapat mengklaim kembali memori.

Berlaku untuk

Dispose(Boolean)

Sumber:
SmtpClient.cs
Sumber:
SmtpClient.cs
Sumber:
SmtpClient.cs

Mengirim pesan QUIT ke server SMTP, dengan anggun mengakhiri koneksi TCP, merilis semua sumber daya yang digunakan oleh instans SmtpClient kelas saat ini, dan secara opsional membuang sumber daya terkelola.

protected:
 virtual void Dispose(bool disposing);
protected virtual void Dispose (bool disposing);
abstract member Dispose : bool -> unit
override this.Dispose : bool -> unit
Protected Overridable Sub Dispose (disposing As Boolean)

Parameter

disposing
Boolean

true untuk merilis sumber daya terkelola dan tidak terkelola; false untuk merilis hanya sumber daya yang tidak terkelola.

Keterangan

Koneksi yang dibuat oleh instans SmtpClient kelas saat ini ke server SMTP dapat digunakan kembali jika aplikasi ingin mengirim beberapa pesan ke server SMTP yang sama. Ini sangat berguna ketika autentikasi atau enkripsi digunakan untuk membuat koneksi ke server SMTP. Proses autentikasi dan pembentukan sesi TLS bisa menjadi operasi yang mahal. Persyaratan untuk membuat ulang koneksi untuk setiap pesan saat mengirim email dalam jumlah besar ke server SMTP yang sama dapat berdampak signifikan pada performa. Ada sejumlah aplikasi email volume tinggi yang mengirim pembaruan status email, distribusi buletin, atau pemberitahuan email. Juga banyak aplikasi klien email yang mendukung mode off-line di mana pengguna dapat membuat banyak pesan email yang dikirim nanti ketika koneksi ke server SMTP dibuat. Biasanya klien email mengirim semua pesan SMTP ke server SMTP tertentu (disediakan oleh penyedia layanan Internet) yang kemudian meneruskan email ini ke server SMTP lainnya.

Implementasi SmtpClient kelas mengumpulkan koneksi SMTP sehingga dapat menghindari overhead membangun kembali koneksi untuk setiap pesan ke server yang sama. Aplikasi dapat menggunakan kembali objek yang sama SmtpClient untuk mengirim banyak email yang berbeda ke server SMTP yang sama dan ke banyak server SMTP yang berbeda. Akibatnya, tidak ada cara untuk menentukan kapan aplikasi selesai menggunakan SmtpClient objek dan harus dibersihkan.

Ketika sesi SMTP selesai dan klien ingin mengakhiri koneksi, ia harus mengirim pesan QUIT ke server untuk menunjukkan bahwa ia tidak memiliki lebih banyak pesan untuk dikirim. Ini memungkinkan server untuk membebaskan sumber daya yang terkait dengan koneksi dari klien dan memproses pesan yang dikirim oleh klien.

Memanggil Dispose metode pada SmtpClient objek yang menjalankan operasi asinkron SendAsync akan membatalkan operasi pengiriman seolah-olah SendAsyncCancel metode telah dipanggil.

Kelas SmtpClient tidak Finalize memiliki metode . Jadi aplikasi harus memanggil Dispose untuk secara eksplisit membebaskan sumber daya.

Metode ini Dispose melakukan iterasi melalui semua koneksi yang dibuat ke server SMTP yang ditentukan dalam Host properti dan mengirim pesan QUIT diikuti dengan mengakhiri koneksi TCP dengan lancar. Metode ini Dispose juga merilis sumber daya yang tidak dikelola yang digunakan oleh Socket dan secara opsional membuang sumber daya terkelola.

Panggil Dispose ketika Anda selesai menggunakan SmtpClient. Metode Dispose ini meninggalkan SmtpClient dalam keadaan tidak dapat digunakan. Setelah memanggil Dispose, Anda harus merilis semua referensi ke SmtpClient sehingga pengumpul sampah dapat mengklaim kembali memori yang SmtpClient diduduki.

Untuk informasi selengkapnya, lihat Membersihkan Sumber Daya yang Tidak Dikelola dan Menerapkan Metode Buang.

Catatan

Selalu panggil Dispose sebelum Anda merilis referensi terakhir Anda ke SmtpClient. Jika tidak, sumber daya yang digunakan tidak akan dikosongkan sehingga pengumpul sampah dapat mengklaim kembali memori.

Berlaku untuk