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

Tại sao sử dụng câu ...

Câu trả lời

Trong C#, câu lệnh lock được sử dụng để đảm bảo rằng một khối mã chỉ được thực thi bởi một luồng tại một thời điểm. Điều này ngăn chặn các vấn đề đa luồng như race conditions, deadlocks và các vấn đề về tính nhất quán dữ liệu khi nhiều luồng cố gắng truy cập hoặc thay đổi cùng một tài nguyên chia sẻ.

Cách sử dụng:

Để sử dụng lock, bạn chọn một đối tượng (thường là một đối tượng riêng tư) để phục vụ như là một "lock token" hoặc "monitor". Khi một luồng bắt đầu một khối mã được bảo vệ bởi lock, nó sẽ cố gắng "lấy khóa" trên đối tượng đó. Nếu không có luồng nào khác đang giữ khóa, luồng này sẽ tiếp tục thực thi khối mã. Nếu khóa đã được giữ bởi một luồng khác, luồng này sẽ chờ cho đến khi khóa được giải phóng.

csharp Copy
private readonly object _lockObject = new object();

public void PerformThreadSafeAction()
{
    lock (_lockObject)
    {
        // Khối mã chỉ được thực thi bởi một luồng tại một thời điểm.
    }
}

Tại sao lại sử dụng lock:

  1. Tránh Race Conditions: Khi nhiều luồng cùng thao tác trên cùng một dữ liệu, có thể xảy ra race conditions, nơ...
senior

senior

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

middle

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

middle

Lợi ích của Deferred Execution trong LINQ là gì?

senior

Sự khác biệt giữa late bindingearly binding 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