119
Chương 4: Tiểu trình, tiến trình, và sự đồng bộ
this.message = message;
}
// Các thuộc tính dùng để lấy các thiết lập cấu hình.
public int Iterations { get { return iterations; } }
public string Message { get { return message; } }
}
public class ThreadPoolExample {
// Hiển thị thông tin ra cửa sổ Console.
public static void DisplayMessage(object state) {
// Ép đối số state sang MessageInfo.
MessageInfo config = state as MessageInfo;
// Nếu đối số config là null, không có đối số nào được
// truyền cho phương thức ThreadPool.QueueUserWorkItem;
// sử dụng các giá trị mặc định.
if (config == null) {
// Hiển thị một thông báo ra cửa sổ Console ba lần.
for (int count = 0; count < 3; count++) {
Console.WriteLine("A thread-pool example.");
// Vào trạng thái chờ, dùng cho mục đích minh họa.
// Tránh đưa các tiểu trình của thread-pool
// vào trạng thái chờ trong các ứng dụng thực tế.
Thread.Sleep(1000);
}
} else {
// Hiển thị một thông báo được chỉ định trước
// với số lần cũng được chỉ định trước.
for (int count = 0; count < config.Iterations; count++) {