Stream.Close Metode
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.
Menutup aliran saat ini dan merilis sumber daya apa pun (seperti soket dan handel file) yang terkait dengan aliran saat ini. Alih-alih memanggil metode ini, pastikan aliran dibuang dengan benar.
public:
virtual void Close();
public virtual void Close ();
abstract member Close : unit -> unit
override this.Close : unit -> unit
Public Overridable Sub Close ()
Keterangan
Metode ini memanggil , menentukan true
untuk merilis Disposesemua sumber daya. Anda tidak perlu secara khusus memanggil metode .Close Sebagai gantinya, pastikan bahwa setiap Stream objek dibuang dengan benar. Anda dapat mendeklarasikan Stream objek dalam using
blok (atau Using
blok di Visual Basic) untuk memastikan bahwa aliran dan semua sumber dayanya dibuang, atau Anda dapat secara eksplisit memanggil metode .Dispose
Menghapus aliran tidak akan menghapus encoder yang mendasar kecuali Anda secara eksplisit memanggil implementasi Flush atau Close
. Pengaturan AutoFlush ke true
berarti bahwa data akan dihapus dari buffer ke aliran, tetapi status encoder tidak akan dibersihkan. Ini memungkinkan encoder untuk mempertahankan statusnya (karakter parsial) sehingga dapat mengodekan blok karakter berikutnya dengan benar. Skenario ini mempengaruhi UTF8 dan UTF7 di mana karakter tertentu dapat dikodekan hanya setelah encoder menerima karakter atau karakter yang berdekatan.
Upaya untuk memanipulasi aliran setelah aliran ditutup mungkin melempar ObjectDisposedException.
Catatan Bagi Inheritor
Di kelas turunan, jangan ambil alih metode , sebagai gantinya Close() , letakkan semua logika pembersihan Stream
Dispose(Boolean) dalam metode . Untuk informasi selengkapnya, lihat Menerapkan Metode Buang.