source change for consistency
This commit is contained in:
parent
c3c5365fcf
commit
d2f5446ee5
@ -297,7 +297,7 @@ class SemaphoreHeap(Object)
|
|||||||
| top |
|
| top |
|
||||||
|
|
||||||
top := self.arr at: 0.
|
top := self.arr at: 0.
|
||||||
self deleteAt: 0.
|
self removeAt: 0.
|
||||||
^top
|
^top
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -314,7 +314,7 @@ class SemaphoreHeap(Object)
|
|||||||
^if (aSemaphore youngerThan: item) { self siftUp: anIndex } else { self siftDown: anIndex }.
|
^if (aSemaphore youngerThan: item) { self siftUp: anIndex } else { self siftDown: anIndex }.
|
||||||
}
|
}
|
||||||
|
|
||||||
method deleteAt: anIndex
|
method removeAt: anIndex
|
||||||
{
|
{
|
||||||
| item xitem |
|
| item xitem |
|
||||||
|
|
||||||
|
@ -13,6 +13,7 @@ class System(Apex)
|
|||||||
var(#class) asyncsg.
|
var(#class) asyncsg.
|
||||||
var(#class) gcfin_sem.
|
var(#class) gcfin_sem.
|
||||||
var(#class) gcfin_should_exit := false.
|
var(#class) gcfin_should_exit := false.
|
||||||
|
var(#class) shr.
|
||||||
|
|
||||||
pooldic Log
|
pooldic Log
|
||||||
{
|
{
|
||||||
@ -28,6 +29,16 @@ class System(Apex)
|
|||||||
FATAL := 16.
|
FATAL := 16.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
method(#class) _initialize
|
||||||
|
{
|
||||||
|
self.shr := Dictionary new.
|
||||||
|
}
|
||||||
|
|
||||||
|
method(#class) _cleanup
|
||||||
|
{
|
||||||
|
self.shr := nil.
|
||||||
|
}
|
||||||
|
|
||||||
method(#class) addAsyncSemaphore: sem
|
method(#class) addAsyncSemaphore: sem
|
||||||
{
|
{
|
||||||
^self.asyncsg addSemaphore: sem
|
^self.asyncsg addSemaphore: sem
|
||||||
@ -55,6 +66,8 @@ class System(Apex)
|
|||||||
self error: ('Cannot find the class - ' & class_name).
|
self error: ('Cannot find the class - ' & class_name).
|
||||||
}.
|
}.
|
||||||
|
|
||||||
|
self _initialize.
|
||||||
|
|
||||||
// start the gc finalizer process and os signal handler process
|
// start the gc finalizer process and os signal handler process
|
||||||
//[ self __gc_finalizer ] fork.
|
//[ self __gc_finalizer ] fork.
|
||||||
//[ self __os_sig_handler ] fork.
|
//[ self __os_sig_handler ] fork.
|
||||||
@ -70,7 +83,6 @@ class System(Apex)
|
|||||||
]
|
]
|
||||||
ensure: [
|
ensure: [
|
||||||
self _setSig: 16rFF.
|
self _setSig: 16rFF.
|
||||||
//// System logNl: '======= END of startup ==============='.
|
|
||||||
].
|
].
|
||||||
|
|
||||||
^ret.
|
^ret.
|
||||||
@ -206,6 +218,7 @@ class System(Apex)
|
|||||||
self.gcfin_sem signal. // wake the gcfin process.
|
self.gcfin_sem signal. // wake the gcfin process.
|
||||||
|
|
||||||
self _halting. // inform VM that it should get ready for halting.
|
self _halting. // inform VM that it should get ready for halting.
|
||||||
|
self _cleanup.
|
||||||
].
|
].
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -224,6 +237,15 @@ class System(Apex)
|
|||||||
method(#class,#primitive) return: object to: context.
|
method(#class,#primitive) return: object to: context.
|
||||||
|
|
||||||
// =======================================================================================
|
// =======================================================================================
|
||||||
|
method(#class) registerSignalHandler: block
|
||||||
|
{
|
||||||
|
self.shr add: block.
|
||||||
|
}
|
||||||
|
|
||||||
|
method(#class) removeSignalHandler: block
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
method(#class) sleepForSecs: secs
|
method(#class) sleepForSecs: secs
|
||||||
{
|
{
|
||||||
// -----------------------------------------------------
|
// -----------------------------------------------------
|
||||||
|
@ -77,9 +77,9 @@ class MyObject(Object)
|
|||||||
].
|
].
|
||||||
|
|
||||||
'--------------------------' dump.
|
'--------------------------' dump.
|
||||||
sempq deleteAt: 40.
|
sempq removeAt: 40.
|
||||||
sempq deleteAt: 50.
|
sempq removeAt: 50.
|
||||||
sempq deleteAt: 100.
|
sempq removeAt: 100.
|
||||||
|
|
||||||
a := -100.
|
a := -100.
|
||||||
[sempq size > 0] whileTrue: [
|
[sempq size > 0] whileTrue: [
|
||||||
|
@ -227,8 +227,8 @@ class MyObject(TestObject)
|
|||||||
].
|
].
|
||||||
|
|
||||||
'--------------------------' dump.
|
'--------------------------' dump.
|
||||||
sempq deleteAt: 40.
|
sempq removeAt: 40.
|
||||||
sempq deleteAt: 50.
|
sempq removeAt: 50.
|
||||||
|
|
||||||
[sempq size > 0] whileTrue: [
|
[sempq size > 0] whileTrue: [
|
||||||
| sem |
|
| sem |
|
||||||
|
Loading…
Reference in New Issue
Block a user