Lợi ích của việc sử dụng WaitForSingleObject
ở đây trái ngược với việc không sử dụng nó là gì? Khối mã đầu tiên là từ previous answer. Khối thứ hai là cách tôi đang làm nó.Lợi ích của việc sử dụng WaitForSingleObject khi kiểm tra quá trình ID
BOOL IsProcessRunning(DWORD pid)
{
HANDLE process = OpenProcess(SYNCHRONIZE, FALSE, pid);
DWORD ret = WaitForSingleObject(process, 0);
CloseHandle(process);
return (ret == WAIT_TIMEOUT);
}
vs
BOOL IsProcessRunning(DWORD pid)
{
HANDLE process = OpenProcess(PROCESS_QUERY_LIMITED_INFORMATION, FALSE, pid);
const bool exists = (process != NULL);
CloseHandle(process);
return exists;
}
Nó có vẻ như sử dụng SYNCHRONIZE đòi hỏi đặc quyền cao hơn và tôi chỉ muốn kiểm tra PID cho người dùng hiện.
Để thêm bạn một số công việc so sánh - bạn có thể muốn so sánh 'GetExitCodeProcess' với' WaitForSingleObject' để xác định trạng thái hoàn thành quá trình. –