This is the trivial-main-thread Reference Manual, version 2.0.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 08 19:48:08 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
trivial-main-thread
Compatibility library to run things in the main thread.
Yukari Hafner <shinmera@tymoon.eu>
Yukari Hafner <shinmera@tymoon.eu>
(GIT https://github.com/Shinmera/trivial-main-thread.git)
zlib
2.0.0
trivial-features
(system).
documentation-utils
(system).
bordeaux-threads
(system).
package.lisp
(file).
main-thread.lisp
(file).
documentation.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
trivial-main-thread/trivial-main-thread.asd
trivial-main-thread/package.lisp
trivial-main-thread/main-thread.lisp
trivial-main-thread/documentation.lisp
trivial-main-thread/trivial-main-thread.asd
trivial-main-thread
(system).
trivial-main-thread/package.lisp
trivial-main-thread
(system).
trivial-main-thread/main-thread.lisp
package.lisp
(file).
trivial-main-thread
(system).
*on-error*
(special variable).
call-in-main-thread
(function).
ensure-main-runner
(function).
main-thread
(function).
main-thread-p
(function).
start-main-runner
(function).
stop-main-runner
(function).
swap-main-thread
(function).
with-body-in-main-thread
(macro).
*main-runner-running-p*
(special variable).
*main-thread*
(special variable).
*task-cvar*
(special variable).
*task-lock*
(special variable).
*task-queue*
(special variable).
find-main-thread
(function).
main-error-handler
(function).
main-runner
(function).
vector-push-safely
(function).
trivial-main-thread/documentation.lisp
main-thread.lisp
(file).
trivial-main-thread
(system).
Packages are listed by definition order.
trivial-main-thread
org.shirakumo.trivial-main-thread
tmt
common-lisp
.
*on-error*
(special variable).
call-in-main-thread
(function).
ensure-main-runner
(function).
main-thread
(function).
main-thread-p
(function).
start-main-runner
(function).
stop-main-runner
(function).
swap-main-thread
(function).
with-body-in-main-thread
(macro).
*main-runner-running-p*
(special variable).
*main-thread*
(special variable).
*task-cvar*
(special variable).
*task-lock*
(special variable).
*task-queue*
(special variable).
find-main-thread
(function).
main-error-handler
(function).
main-runner
(function).
vector-push-safely
(function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Sets what to do if an error is signalled in the main thread runner.
The value may be one of the following:
:RESIGNAL — Resignal the condition in the calling thread. If the
condition is not caused by a task, the debugger is
invoked instead
:QUIT — The implementation exits via UIOP:QUIT
NIL
:IGNORE — The error is not handled and the behaviour is
implementation-dependent
FUNCTION
SYMBOL — The named function is invoked with the error. Note
that this makes the following also permissible:
STOP-MAIN-RUNNER
INVOKE-DEBUGGER
CONTINUE
ABORT
Defaults to :RESIGNAL
See START-MAIN-RUNNER
See STOP-MAIN-RUNNER
See CL:INVOKE-DEBUGGER
See CL:CONTINUE
See CL:ABORT
See UIOP:QUIT
Evaluate the BODY in the main thread.
See CALL-IN-MAIN-THREAD
Call FUNCTION in the main thread.
If this is called in the main thread, the function is simply invoked.
Otherwise, ENSURE-MAIN-RUNNER is called and the function is scheduled for
execution.
If BLOCKING is non-NIL, the current thread is blocked until the
function has finished running and the function’s return values are
returned. If the function signals an error and *ON-ERROR* is :RESIGNAL,
the error is re-signaled in the calling thread.
See *ON-ERROR*
See MAIN-THREAD-P
See ENSURE-MAIN-RUNNER
Ensure that the main thread runner is indeed running.
See START-MAIN-RUNNER
See STOP-MAIN-RUNNER
Returns the main thread.
See MAIN-THREAD-P
Returns true if the given thread is the main thread.
See MAIN-THREAD
Starts the runner in the main thread.
If the runner is already running, an error is signalled.
Otherwise, the main thread is hijacked via SWAP-MAIN-THREAD.
The runner keeps a queue of tasks (function thunks) to invoke. When it
gets woken up to process tasks (via CALL-IN-MAIN-THREAD), it goes
through the queue, invokes the functions in sequence, and puts the
function’s return values back into the queue so the caller can process
them. If an error is signalled during task processing, the behaviour
described in *ON-ERROR* is executed.
See *ON-ERROR*
See SWAP-MAIN-THREAD
See ENSURE-MAIN-RUNNER
Stops the runner in the main thread, allowing it to continue.
If the runner is not running in the main thread, an error is
signalled. If this is called from within the runner, the function
causes an unwind.
See START-MAIN-RUNNER
Swaps the main thread for our own FUNCTION.
If the implementation uses the main thread for vital tasks, this function tries to ensure that these vital tasks are continued in a new thread instead.
If this is called from the main thread, the function is simply invoked.
See MAIN-THREAD-P
Jump to: | C E F M S V W |
---|
Jump to: | C E F M S V W |
---|
Jump to: | *
S |
---|
Jump to: | *
S |
---|
Jump to: | D F M P S T |
---|
Jump to: | D F M P S T |
---|