Câu hỏi phỏng vấn C#
Câu hỏi

Tại sao cần sử dụng IDisposable interface trong C#?

Câu trả lời

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ý là gì?

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ý.

Cách sử dụng 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ử...
Bạn cần đăng nhập để xem
middle

middle

Gợi ý câu hỏi phỏng vấn

middle

Sự khác nhau giữa ActionResultJsonResult trong C# là gì?

middle

Sự khác biệt giữa virtual methodabstract method trong C# là gì?

senior

Constructor Chaining trong C# là gì?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào