Tại sao cần sử dụng IDisposable
interface trong C#?
Tại sao cần sử dụng IDisposable
interface trong C#?
Trong C#, IDisposable
interface được sử dụng để giải phóng các tài nguyên không quản lý một cách rõ ràng và có kiểm soát. Việc sử dụng IDisposable
giúp ngăn chặn việc rò rỉ tài nguyên và tối ưu hóa hiệu suất ứng dụng bằng cách đảm bảo rằng tài nguyên không quản lý được giải phóng đúng cách khi không còn cần thiết nữa.
Tài nguyên không quản lý bao gồm các tài nguyên như bộ nhớ, handles của file, kết nối mạng hoặc cơ sở dữ liệu, và các tài nguyên hệ thống khác mà .NET runtime không tự động giải phóng. Trong khi .NET runtime cung cấp một bộ thu gom rác (Garbage Collector - GC) để tự động giải phóng bộ nhớ của các đối tượng quản lý, GC không thể tự động giải phóng tài nguyên không quản lý.
IDisposable
IDisposable
interface chỉ chứa một phương thức duy nhất là Dispose()
, mà bạn cần triển khai để giải phóng tài nguyên không quản lý. Khi một lớp triển khai IDisposable
, bạn nên gọi phương thức Dispose()
của nó khi đối tượng không còn được sử dụng nữa, thường là sử dụng cấu trúc using
để đảm bảo Dispose()
được gọi tự động.
public class MyResource : IDisposable
{
// Giả sử...
middle
Gợi ý câu hỏi phỏng vấn
Chưa có bình luận nào