... luồng công việc ( worker thread ) bắt đầu, và từ đó 2 luồng xử lí cùng tốc độ cho đến khi chúng hoàn thành. C# và các lớp cơ sở Thread ( luồng ) – Phần 2 ThreadPlayaround Interval ... sau , luồng a gặp câu lệnh lock(b) , và ngay lập tức bước vào trạng thái ngủ, đợi cho lock trên b được giải phóng . và tương tự sau đó , luồng thứ hai gặp câu lệnh lock(a) và cũng rơi vào trạng ... a, b là 2 đối tượng tham chiếu mà cả hai luồng cần truy nhập : lock (a) { // do something lock (b) { // do something } } Vào cùng lúc đó 1 luồng khác đang chạy : lock (b) { ...