Process.st
changeset 2636 8cb50e1b0688
parent 2384 ceb4f8de635a
child 2689 ada9b102abcf
--- a/Process.st	Thu May 08 18:43:04 1997 +0200
+++ b/Process.st	Fri May 09 12:16:44 1997 +0200
@@ -939,6 +939,23 @@
     ^ singleStepping
 !
 
+isSystemProcess
+    "return true if aProcess is a system process,
+     which should not be suspended/terminated etc.."
+
+    ^ (Processor isPureEventDriven 
+       or:[id == 0
+       or:[processGroupId == 0
+       or:[(Display notNil and:[Display dispatchProcess == self])
+       ]]]) 
+
+    "
+     Processor activeProcessIsSystemProcess
+    "
+
+    "Created: 17.4.1997 / 12:57:37 / stefan"
+!
+
 nameOrId
     "return a string to identify the process - either name or id"
 
@@ -954,13 +971,14 @@
      this blocks the whole smalltalk for the time delta;
      if its a normal thread, only that thread is suspended."
 
-    (Processor isSystemProcess:self) ifTrue:[
+    (self isSystemProcess) ifTrue:[
         OperatingSystem millisecondDelay:millis
     ] ifFalse:[
         Delay waitForMilliseconds:millis
     ]
 
     "Created: 16.12.1995 / 13:10:53 / cg"
+    "Modified: 17.4.1997 / 13:02:25 / stefan"
 !
 
 trapRestrictedMethods:trap
@@ -1323,6 +1341,6 @@
 !Process class methodsFor:'documentation'!
 
 version
-    ^ '$Header: /cvs/stx/stx/libbasic/Process.st,v 1.76 1997-02-12 13:18:59 cg Exp $'
+    ^ '$Header: /cvs/stx/stx/libbasic/Process.st,v 1.77 1997-05-09 10:16:44 stefan Exp $'
 ! !
 Process initialize!