--- a/OS.st Wed Jun 10 11:53:06 1998 +0200
+++ b/OS.st Wed Jun 10 12:01:56 1998 +0200
@@ -1831,14 +1831,29 @@
!
killProcess:processId
- "kill a unix process.
- The process terminates immediately and has no chance to perform any cleanup actions.
+ "kill an OS process.
+ The process has a no chance to do some cleanup.
WARNING: in order to avoid zombie processes (on unix),
- you have to fetch the processes exitstatus with
- OperatingSystem>>getStatusOfProcess:aProcessId."
+ you may have to fetch the processes exitstatus with
+ OperatingSystem>>getStatusOfProcess:aProcessId."
self subclassResponsibility
+
+ "Modified: / 10.6.1998 / 12:00:07 / cg"
+!
+
+killProcessGroup:processGroupId
+ "kill an OS process group.
+ The process has NO chance to do some cleanup.
+
+ WARNING: in order to avoid zombie processes (on unix),
+ you may have to fetch the processes exitstatus with
+ OperatingSystem>>getStatusOfProcess:aProcessId."
+
+ self subclassResponsibility
+
+ "Created: / 10.6.1998 / 12:00:26 / cg"
!
nameForSignal:aSignalNumber
@@ -1915,16 +1930,6 @@
OSSignals at:signalNumber put:aSignal
!
-primTerminateProcess:pid
- "terminate a WIN32 process.
- The TerminateProcess function is used to unconditionally cause
- a process to exit. Use it only in extreme circumstances. The state of
- global data maintained by dynamic-link libraries (DLLs)
- may be compromised if TerminateProcess is used."
-
- self subclassResponsibility
-!
-
sendSignal:signalNumber to:processId
"send a unix signal to some process (maybe myself).
Returns false if any error occurred, true otherwise.
@@ -3235,6 +3240,6 @@
!AbstractOperatingSystem class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/Attic/OS.st,v 1.5 1998-06-05 17:10:05 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/Attic/OS.st,v 1.6 1998-06-10 10:01:21 cg Exp $'
! !
AbstractOperatingSystem initialize!
--- a/UnixOS.st Wed Jun 10 11:53:06 1998 +0200
+++ b/UnixOS.st Wed Jun 10 12:01:56 1998 +0200
@@ -5400,18 +5400,28 @@
killProcess:processId
"kill a unix process.
- The process terminates immediately and has no chance to perform any cleanup actions.
+ The process has a no chance to do some cleanup.
WARNING: in order to avoid zombie processes (on unix),
- you have to fetch the processes exitstatus with
- UnixOperatingSystem>>getStatusOfProcess:aProcessId."
-
- self isMSWINDOWSlike ifTrue:[
- self primTerminateProcess:processId
- ] ifFalse:[
- self sendSignal:(self sigKILL) to:processId.
- ].
- "Modified: 28.12.1995 / 15:06:18 / stefan"
+ you may have to fetch the processes exitstatus with
+ UnixOperatingSystem>>getStatusOfProcess:aProcessId."
+
+ self sendSignal:(self sigKILL) to:processId.
+
+ "Modified: / 10.6.1998 / 11:59:12 / cg"
+!
+
+killProcessGroup:processGroupId
+ "kill a unix process group.
+ The process has a no chance to do some cleanup.
+
+ WARNING: in order to avoid zombie processes (on unix),
+ you may have to fetch the processes exitstatus with
+ UnixOperatingSystem>>getStatusOfProcess:aProcessId."
+
+ self sendSignal:(self sigKILL) to:(processGroupId negated).
+
+ "Created: / 10.6.1998 / 11:59:29 / cg"
!
primTerminateProcess:pid
@@ -8228,6 +8238,6 @@
!UnixOperatingSystem class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/Attic/UnixOS.st,v 1.10 1998-06-10 09:53:06 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/Attic/UnixOS.st,v 1.11 1998-06-10 10:01:56 cg Exp $'
! !
UnixOperatingSystem initialize!
--- a/UnixOperatingSystem.st Wed Jun 10 11:53:06 1998 +0200
+++ b/UnixOperatingSystem.st Wed Jun 10 12:01:56 1998 +0200
@@ -5400,18 +5400,28 @@
killProcess:processId
"kill a unix process.
- The process terminates immediately and has no chance to perform any cleanup actions.
+ The process has a no chance to do some cleanup.
WARNING: in order to avoid zombie processes (on unix),
- you have to fetch the processes exitstatus with
- UnixOperatingSystem>>getStatusOfProcess:aProcessId."
-
- self isMSWINDOWSlike ifTrue:[
- self primTerminateProcess:processId
- ] ifFalse:[
- self sendSignal:(self sigKILL) to:processId.
- ].
- "Modified: 28.12.1995 / 15:06:18 / stefan"
+ you may have to fetch the processes exitstatus with
+ UnixOperatingSystem>>getStatusOfProcess:aProcessId."
+
+ self sendSignal:(self sigKILL) to:processId.
+
+ "Modified: / 10.6.1998 / 11:59:12 / cg"
+!
+
+killProcessGroup:processGroupId
+ "kill a unix process group.
+ The process has a no chance to do some cleanup.
+
+ WARNING: in order to avoid zombie processes (on unix),
+ you may have to fetch the processes exitstatus with
+ UnixOperatingSystem>>getStatusOfProcess:aProcessId."
+
+ self sendSignal:(self sigKILL) to:(processGroupId negated).
+
+ "Created: / 10.6.1998 / 11:59:29 / cg"
!
primTerminateProcess:pid
@@ -8228,6 +8238,6 @@
!UnixOperatingSystem class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/UnixOperatingSystem.st,v 1.10 1998-06-10 09:53:06 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/UnixOperatingSystem.st,v 1.11 1998-06-10 10:01:56 cg Exp $'
! !
UnixOperatingSystem initialize!