Method category index
instance creation (class)
built ins (instance)
idle tasks (instance)
still unclassified (instance)
timed invocation (instance)
Error---new instances of ProcessorScheduler should not be created.
Answer the active process' debugger
Answer the active process' priority
Answer the active process
Answer another singleton object hosting thread-local variables for the Smalltalk processes. This acts like a normal Dictionary with a couple of differences: a) using #associationAt: will return special associations that retrieve a thread-local value; b) requesting missing keys will return nil, and removing them will be a nop.
Answer a linked list of processes at the given priority
Terminate the active process
Answer the timeslice that is assigned to each Process before it is automatically preempted by the system (in milliseconds). An answer of zero means that preemptive multitasking is disabled. Note that the system by default is compiled without preemptive multitasking, and that even if it is enabled it will work only under BSD derivatives (or, in general, systems that support ITIMER_VIRTUAL).
Set the timeslice that is assigned to each Process before it is automatically preempted by the system. Setting this to zero disables preemptive multitasking. Note that the system by default is compiled with preemptive multitasking disabled, and that even if it is enabled it will surely work only under BSD derivatives (or, in general, systems that support ITIMER_VIRTUAL).
Let the active process yield control to other processes
Disable interrupts caused by external events while the current process is executing. Note that interrupts are disabled on a per-process basis, and that calling #disableInterrupts twice requires calling #enableInterrupts twice as well to re-enable interrupts.
Re-enable interrupts caused by external events while the current process is executing. By default, interrupts are enabled.
Private - Main body of the event loop.
Private - Call the next idle task. Return whether GNU Smalltalk should pause until the next OS signal.
Register aBlock to be executed when things are idle
Private - Start the finalization process.
Private - Pause for some time if aBoolean is false, or until a signal if it is true.
Private - Fire a low-priority process to finalize the objects
If we left some work behind when the image was saved, do it now.
Store onto aStream a printed representation of the receiver
Answer the priority for system high-priority I/O processes, such as a process handling input from a network.
Answer the highest valid priority
Answer the priority of idle processes.
Answer the priority for system low-priority I/O processes. Examples are the process handling input from the user (keyboard, pointing device, etc.) and the process distributing input from a network.
Answer the lowest valid priority
Private - Answer a name for the given process priority
Answer the priority for system background-priority processes. An incremental garbage collector could run at this level but now it runs at idlePriority instead.
Answer the priority for system real-time processes.
Answer the highest priority avilable in the system; never create a process with this priority, instead use BlockClosure>>#valueWithoutPreemption.
Answer the priority for user background-priority processes
Answer the priority for user interrupt-priority processes. Processes run at this level will preempt the window scheduler and should, therefore, not consume the processor forever.
Answer the priority for user standard-priority processes
Store onto aStream a Smalltalk expression which evaluates to the receiver
Private - Answer whether there is a pending call to #signal:atMilliseconds:
signal: aSemaphore atNanosecondClockValue: ns
Private - signal 'aSemaphore' when the nanosecond clock reaches 'ns' nanoseconds.
signal: aSemaphore onInterrupt: anIntegerSignalNumber
Signal 'aSemaphore' when the given C signal occurs.