mirror of
https://github.com/Kitware/CMake.git
synced 2026-01-09 15:20:56 -06:00
KWSys 2017-11-02 (54f0901a)
Code extracted from:
https://gitlab.kitware.com/utils/kwsys.git
at commit 54f0901ad1a1c545a1360a19b5c521857b5a66ec (master).
Upstream Shortlog
-----------------
Bryon Bean (1):
8e428c18 Process: Add function to kill process (and children) with pid
This commit is contained in:
committed by
Brad King
parent
7d3f33e612
commit
5464e23ff5
@@ -77,6 +77,7 @@
|
||||
#define kwsysProcess_WaitForExit kwsys_ns(Process_WaitForExit)
|
||||
#define kwsysProcess_Interrupt kwsys_ns(Process_Interrupt)
|
||||
#define kwsysProcess_Kill kwsys_ns(Process_Kill)
|
||||
#define kwsysProcess_KillPID kwsys_ns(Process_KillPID)
|
||||
#define kwsysProcess_ResetStartTime kwsys_ns(Process_ResetStartTime)
|
||||
#endif
|
||||
|
||||
@@ -456,6 +457,13 @@ kwsysEXPORT void kwsysProcess_Interrupt(kwsysProcess* cp);
|
||||
*/
|
||||
kwsysEXPORT void kwsysProcess_Kill(kwsysProcess* cp);
|
||||
|
||||
/**
|
||||
* Same as kwsysProcess_Kill using process ID to locate process to
|
||||
* terminate.
|
||||
* @see kwsysProcess_Kill(kwsysProcess* cp)
|
||||
*/
|
||||
kwsysEXPORT void kwsysProcess_KillPID(unsigned long);
|
||||
|
||||
/**
|
||||
* Reset the start time of the child process to the current time.
|
||||
*/
|
||||
|
||||
@@ -2485,6 +2485,11 @@ static pid_t kwsysProcessFork(kwsysProcess* cp,
|
||||
#define KWSYSPE_PS_FORMAT "%d %d %*[^\n]\n"
|
||||
#endif
|
||||
|
||||
void kwsysProcess_KillPID(unsigned long process_id)
|
||||
{
|
||||
kwsysProcessKill((pid_t)process_id);
|
||||
}
|
||||
|
||||
static void kwsysProcessKill(pid_t process_id)
|
||||
{
|
||||
#if defined(__linux__) || defined(__CYGWIN__)
|
||||
|
||||
@@ -1466,6 +1466,11 @@ void kwsysProcess_Kill(kwsysProcess* cp)
|
||||
for them to exit. */
|
||||
}
|
||||
|
||||
void kwsysProcess_KillPID(unsigned long process_id)
|
||||
{
|
||||
kwsysProcessKillTree((DWORD)process_id);
|
||||
}
|
||||
|
||||
/*
|
||||
Function executed for each pipe's thread. Argument is a pointer to
|
||||
the kwsysProcessPipeData instance for this thread.
|
||||
|
||||
Reference in New Issue
Block a user