การใช้งาน IDisposable
- เราสามารถใช้งานตรงๆ ได้โดยการ Implements (Inheritance Hierarchy) ไป Class ที่เราใช้งาน
using System; class BaseClass : IDisposable { public void Dispose() { Dispose(true); }
- การใช้บล็อก using() {....} เมื่อให้ Dispose() ทำงานเองเมื่อจบการทำงาน
using (StreamReader sr = new StreamReader(filename)) { txt = sr.ReadToEnd(); } // เมื่อสิ้นสุดตัวแปร sr จะถูกทำลาย
- การใช้บล๊อก try/catch/finally
StreamReader sr = null; try { sr = new StreamReader(filename); txt = sr.ReadToEnd(); } finally { if (sr != null) sr.Dispose(); }
Credit: IDisposable Interface
ไม่มีความคิดเห็น:
แสดงความคิดเห็น