152
Chương 4: Tiểu trình, tiến trình, và sự đồng bộ
Console.WriteLine("Could not start process.");
Console.WriteLine(ex);
}
}
// Nhấn Enter để kết thúc.
Console.WriteLine("Main method complete. Press Enter.");
Console.ReadLine();
}
}
11.
11.
K t thúc m t ti n trình
ế
ộ ế
K t thúc m t ti n trình
ế
ộ ế
Bạn muốn kết thúc một tiến trình (một ứng dụng hay một dịch vụ).
Thu lấy đối tượng
Process
mô tả tiến trình hệ điều hành cần kết thúc. Đối với các
ứng dụng dựa-trên-Windows, hãy gọi phương thức
Process.CloseMainWindow
để
gửi một thông điệp đến cửa sổ chính của ứng dụng. Đối với các ứng dụng dựa-
trên-Windows bỏ qua
CloseMainWindow
, hay đối với các ứng dụng không-dựa-
trên-Windows, gọi phương thức
Process.Kill
.
Nếu khởi chạy một tiến trình mới từ mã lệnh được-quản-lý bằng lớp
Process
(đã được thảo
luận trong mục 4.10), bạn có thể kết thúc tiến trình mới bằng đối tượng
Process
mô tả tiến
trình này. Bạn cũng có thể thu lấy các đối tượng
Process
chỉ đến các tiến trình khác hiện đang
chạy bằng các phương thức tĩnh của lớp
Process
(được tóm tắt trong bảng 4.4).
Bảng 4.4 Các phương thức dùng để thu lấy các tham chiếu Process
Phương thức
Mô tả
GetCurrentProcess
Trả về đối tượng
Process
mô tả tiến trình hiện đang tích cực.
GetProcessById
Trả về đối tượng
Process
mô tả tiến trình với ID được chỉ định.
GetProcesses
Trả về mảng các đối tượng
Process
mô tả tất cả các tiến trình
hiện đang tích cực.
GetProcessesByName
Trả về mảng các đối tượng
Process
mô tả tất cả các tiến trình
hiện đang tích cực với tên thân thiện được chỉ định. Tên thân
thiện là tên của file thực thi không tính phần mở rộng và đường
dẫn; ví dụ, notepad hay calc.
Một khi đã có đối tượng
Process
mô tả tiến trình cần kết thúc, bạn cần gọi phương thức
CloseMainWindow
hay phương thức
Kill
. Phương thức
CloseMainWindow
gửi một thông điệp
đến cửa sổ chính của ứng dụng dựa-trên-Windows. Phương thức này có cùng tác dụng như thể