--- a/Delay.st Mon Nov 09 21:19:41 1998 +0100
+++ b/Delay.st Mon Nov 09 21:28:11 1998 +0100
@@ -269,14 +269,14 @@
[
Processor disableSemaphore:delaySemaphore.
- delaySemaphore signal.
+ delaySemaphore signalOnce.
] valueUninterruptably
- "Modified: 28.2.1996 / 21:40:27 / cg"
+ "Modified: / 9.11.1998 / 20:56:43 / cg"
! !
!Delay class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/Delay.st,v 1.28 1997-04-18 11:05:16 stefan Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/Delay.st,v 1.29 1998-11-09 20:28:11 cg Exp $'
! !
--- a/ProcSched.st Mon Nov 09 21:19:41 1998 +0100
+++ b/ProcSched.st Mon Nov 09 21:28:11 1998 +0100
@@ -2230,26 +2230,21 @@
Normal smalltalk code should always send an appropriate message directly
to the semaphore (i.e. aSemaphore signal)."
- |now wasBlocked|
-
- wasBlocked := OperatingSystem blockInterrupts.
- now := OperatingSystem getMillisecondTime.
- self signal:aSemaphore atMilliseconds:now.
- wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
-
- "Created: 24.9.1996 / 10:18:45 / cg"
+ self signal:aSemaphore atMilliseconds:OperatingSystem getMillisecondTime.
+
+ "Modified: / 9.11.1998 / 20:39:06 / cg"
!
signal:aSemaphore afterMilliseconds:millis
"arrange for a semaphore to be triggered after some milliseconds"
- |now then wasBlocked|
-
- wasBlocked := OperatingSystem blockInterrupts.
+ |now then|
+
now := OperatingSystem getMillisecondTime.
then := OperatingSystem millisecondTimeAdd:now and:millis rounded.
self signal:aSemaphore atMilliseconds:then.
- wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+
+ "Modified: / 9.11.1998 / 20:39:27 / cg"
!
signal:aSemaphore afterSeconds:seconds
@@ -2606,8 +2601,8 @@
sema := timeoutSemaphoreArray at:index.
sema notNil ifTrue:[
+ timeoutSemaphoreArray at:index put:nil.
sema signalOnce.
- timeoutSemaphoreArray at:index put:nil
] ifFalse:[
"to support pure-events"
block := timeoutActionArray at:index.
@@ -2654,7 +2649,7 @@
]
]
- "Modified: / 29.1.1998 / 17:05:03 / cg"
+ "Modified: / 9.11.1998 / 21:25:02 / cg"
!
removeTimedBlock:aBlock
@@ -2999,6 +2994,6 @@
!ProcessorScheduler class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/Attic/ProcSched.st,v 1.168 1998-11-09 20:19:41 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/Attic/ProcSched.st,v 1.169 1998-11-09 20:27:11 cg Exp $'
! !
ProcessorScheduler initialize!
--- a/ProcessorScheduler.st Mon Nov 09 21:19:41 1998 +0100
+++ b/ProcessorScheduler.st Mon Nov 09 21:28:11 1998 +0100
@@ -2230,26 +2230,21 @@
Normal smalltalk code should always send an appropriate message directly
to the semaphore (i.e. aSemaphore signal)."
- |now wasBlocked|
-
- wasBlocked := OperatingSystem blockInterrupts.
- now := OperatingSystem getMillisecondTime.
- self signal:aSemaphore atMilliseconds:now.
- wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
-
- "Created: 24.9.1996 / 10:18:45 / cg"
+ self signal:aSemaphore atMilliseconds:OperatingSystem getMillisecondTime.
+
+ "Modified: / 9.11.1998 / 20:39:06 / cg"
!
signal:aSemaphore afterMilliseconds:millis
"arrange for a semaphore to be triggered after some milliseconds"
- |now then wasBlocked|
-
- wasBlocked := OperatingSystem blockInterrupts.
+ |now then|
+
now := OperatingSystem getMillisecondTime.
then := OperatingSystem millisecondTimeAdd:now and:millis rounded.
self signal:aSemaphore atMilliseconds:then.
- wasBlocked ifFalse:[OperatingSystem unblockInterrupts].
+
+ "Modified: / 9.11.1998 / 20:39:27 / cg"
!
signal:aSemaphore afterSeconds:seconds
@@ -2606,8 +2601,8 @@
sema := timeoutSemaphoreArray at:index.
sema notNil ifTrue:[
+ timeoutSemaphoreArray at:index put:nil.
sema signalOnce.
- timeoutSemaphoreArray at:index put:nil
] ifFalse:[
"to support pure-events"
block := timeoutActionArray at:index.
@@ -2654,7 +2649,7 @@
]
]
- "Modified: / 29.1.1998 / 17:05:03 / cg"
+ "Modified: / 9.11.1998 / 21:25:02 / cg"
!
removeTimedBlock:aBlock
@@ -2999,6 +2994,6 @@
!ProcessorScheduler class methodsFor:'documentation'!
version
- ^ '$Header: /cvs/stx/stx/libbasic/ProcessorScheduler.st,v 1.168 1998-11-09 20:19:41 cg Exp $'
+ ^ '$Header: /cvs/stx/stx/libbasic/ProcessorScheduler.st,v 1.169 1998-11-09 20:27:11 cg Exp $'
! !
ProcessorScheduler initialize!