CÁC GIẢI PHÁP LẬP TRÌNH C# - Trang 139

139

Chương 4: Tiểu trình, tiến trình, và sự đồng bộ

while (true) {

try {

Console.WriteLine("{0} : Second thread running. Enter"

+ " (S)uspend, (R)esume, (I)nterrupt, or (E)xit.",

DateTime.Now.ToString("HH:mm:ss.ffff"));

// Nghỉ 2 giây.

Thread.Sleep(2000);

} catch (ThreadInterruptedException) {

// Tiểu trình đã bị gián đoạn. Việc bắt ngoại lệ

// ThreadInterruptedException cho phép ví dụ này

// thực hiện hành động phù hợp và tiếp tục thực thi.

Console.WriteLine("{0} : Second thread interrupted.",

DateTime.Now.ToString("HH:mm:ss.ffff"));

} catch (ThreadAbortException abortEx) {

// Đối tượng trong thuộc tính

// ThreadAbortException.ExceptionState được cung cấp

// bởi tiểu trình đã gọi Thread.Abort.

// Trong trường hợp này, nó chứa một chuỗi

// mô tả lý do của việc hủy bỏ.

Console.WriteLine("{0} : Second thread aborted ({1})",

DateTime.Now.ToString("HH:mm:ss.ffff"),

abortEx.ExceptionState);

// Mặc dù ThreadAbortException đã được thụ lý,

// bộ thực thi sẽ ném nó lần nữa để bảo đảm

// tiểu trình kết thúc.

}

}

}

public static void Main() {

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.