Common Lisp Package: PORTABLE-THREADS

README:

FUNCTION

Public

SCHEDULED-FUNCTION-INVOCATION-TIME (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

SCHEDULED-FUNCTION-MARKER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

SCHEDULED-FUNCTION-MARKER-TEST (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

SCHEDULED-FUNCTION-NAME (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

SCHEDULED-FUNCTION-NAME-TEST (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

SCHEDULED-FUNCTION-REPEAT-INTERVAL (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

THREAD-ALIVE-P (THREAD)

Return T if THREAD is still alive. Note that the return value is potentially stale even before the function returns, as the thread may exit at any time.

THREAD-NAME (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

THREAD-YIELD

Yield the processor to other threads.

Undocumented

ALL-SCHEDULED-FUNCTIONS

ALL-THREADS

AWAKEN-THREAD (THREAD)

CONDITION-VARIABLE-BROADCAST (CONDITION-VARIABLE)

CONDITION-VARIABLE-SIGNAL (CONDITION-VARIABLE)

CONDITION-VARIABLE-WAIT (CONDITION-VARIABLE)

CONDITION-VARIABLE-WAIT-WITH-TIMEOUT (CONDITION-VARIABLE SECONDS)

CURRENT-THREAD

ENCODE-TIME-OF-DAY (SECOND MINUTE HOUR &OPTIONAL (UNIVERSAL-TIME (GET-UNIVERSAL-TIME)))

HIBERNATE-THREAD

KILL-PERIODIC-FUNCTION

KILL-THREAD (THREAD)

MAKE-CONDITION-VARIABLE (&REST INITARGS &KEY (CLASS 'CONDITION-VARIABLE) &ALLOW-OTHER-KEYS)

MAKE-LOCK (&KEY (NAME))

MAKE-RECURSIVE-LOCK (&KEY ((NAME DUM144) NIL) ((%OWNER DUM145) NIL) ((STATE DUM146) 0) ((COPIER DUM147) NIL))

MAKE-SCHEDULED-FUNCTION (FUNCTION &KEY (NAME (AND (SYMBOLP FUNCTION) FUNCTION)) (NAME-TEST #'EQL) MARKER (MARKER-TEST #'EQL))

PAUSE-SCHEDULED-FUNCTION-SCHEDULER

PORTABLE-THREADS-IMPLEMENTATION-VERSION

RESTART-SCHEDULED-FUNCTION-SCHEDULER

RESUME-SCHEDULED-FUNCTION-SCHEDULER

RUN-IN-THREAD (THREAD FUNCTION &REST ARGS)

SCHEDULE-FUNCTION (NAME-OR-SCHEDULED-FUNCTION INVOCATION-TIME &KEY MARKER REPEAT-INTERVAL (VERBOSE *SCHEDULE-FUNCTION-VERBOSE*))

SCHEDULE-FUNCTION-RELATIVE (NAME-OR-SCHEDULED-FUNCTION INTERVAL &KEY MARKER REPEAT-INTERVAL (VERBOSE *SCHEDULE-FUNCTION-VERBOSE*))

SETFSCHEDULED-FUNCTION-INVOCATION-TIME (NEW-VALUE INSTANCE)

SETFSCHEDULED-FUNCTION-MARKER (NEW-VALUE INSTANCE)

SETFSCHEDULED-FUNCTION-MARKER-TEST (NEW-VALUE INSTANCE)

SETFSCHEDULED-FUNCTION-NAME (NEW-VALUE INSTANCE)

SETFSCHEDULED-FUNCTION-NAME-TEST (NEW-VALUE INSTANCE)

SETFSCHEDULED-FUNCTION-REPEAT-INTERVAL (NEW-VALUE INSTANCE)

SCHEDULED-FUNCTION-SCHEDULER-PAUSED-P

SCHEDULED-FUNCTION-SCHEDULER-RUNNING-P

SLEEP-NEARLY-FOREVER (&OPTIONAL SECONDS)

SPAWN-PERIODIC-FUNCTION (FUNCTION INTERVAL &KEY (COUNT NIL) (NAME (AND (SYMBOLP FUNCTION) FUNCTION)) (VERBOSE *PERIODIC-FUNCTION-VERBOSE*))

SPAWN-THREAD (NAME FUNCTION &REST ARGS)

SYMBOL-VALUE-IN-THREAD (SYMBOL THREAD)

THREAD-HOLDS-LOCK-P (LOCK)

SETFTHREAD-NAME (NEW-VALUE INSTANCE)

THREAD-WHOSTATE (THREAD)

SETFTHREAD-WHOSTATE (WHOSTATE THREAD)

THREADP (OBJ)

UNSCHEDULE-FUNCTION (NAME-OR-SCHEDULED-FUNCTION &KEY MARKER (WARNP 'T) (VERBOSE *SCHEDULE-FUNCTION-VERBOSE*))

Private

RECURSIVE-LOCK-%OWNER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

RECURSIVE-LOCK-COPIER (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

RECURSIVE-LOCK-NAME (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

RECURSIVE-LOCK-STATE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

SCHEDULED-FUNCTION-FUNCTION (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

SCHEDULED-FUNCTION-VERBOSE (INSTANCE)

@arg[extid]{A @class{extid}} @return[sytemid]{puri:uri or nil} Returns the System ID part of this External ID.

Undocumented

%MAKE-SCHEDULED-FUNCTION (FUNCTION NAME NAME-TEST MARKER MARKER-TEST)

AWAKEN-SCHEDULED-FUNCTION-SCHEDULER

AWAKEN-THROWABLE-SLEEPER (THREAD &OPTIONAL (TAG 'THROWABLE-SLEEP-FOREVER))

CONDITION-VARIABLE-LOCK-NEEDED-ERROR (CONDITION-VARIABLE OPERATION)

COPY-RECURSIVE-LOCK (INSTANCE)

DELETE-SCHEDULED-FUNCTION (NAME-OR-SCHEDULED-FUNCTION MARKER VERBOSE)

INSERT-SCHEDULED-FUNCTION (SCHEDULED-FUNCTION VERBOSE)

INVOKE-SCHEDULED-FUNCTION (SCHEDULED-FUNCTION)

NON-HOLDER-LOCK-RELEASE-ERROR (LOCK REQUESTING-THREAD HOLDING-THREAD)

PRETTY-INVOCATION-TIME (UT STREAM)

SETFRECURSIVE-LOCK-%OWNER (NEW-VALUE INSTANCE)

SETFRECURSIVE-LOCK-COPIER (NEW-VALUE INSTANCE)

SETFRECURSIVE-LOCK-NAME (NEW-VALUE INSTANCE)

RECURSIVE-LOCK-P (OBJECT)

SETFRECURSIVE-LOCK-STATE (NEW-VALUE INSTANCE)

SCHEDULE-FUNCTION-INTERNAL (NAME-OR-SCHEDULED-FUNCTION MARKER INVOCATION-TIME REPEAT-INTERVAL VERBOSE)

SETFSCHEDULED-FUNCTION-FUNCTION (NEW-VALUE INSTANCE)

SCHEDULED-FUNCTION-P (OBJECT)

SCHEDULED-FUNCTION-SCHEDULER

SETFSCHEDULED-FUNCTION-VERBOSE (NEW-VALUE INSTANCE)

THROWABLE-SLEEP-FOREVER (&OPTIONAL (TAG 'THROWABLE-SLEEP-FOREVER))

WRONG-LOCK-TYPE-ERROR (LOCK NEEDED-LOCK-TYPE OPERATOR)

MACRO

Public

Undocumented

AS-ATOMIC-OPERATION (&BODY BODY)

ATOMIC-DECF (PLACE &OPTIONAL (DELTA 1))

ATOMIC-DECF& (PLACE &OPTIONAL (DELTA 1))

ATOMIC-DELETE (ITEM PLACE &REST ARGS &ENVIRONMENT ENV)

ATOMIC-FLUSH (PLACE)

ATOMIC-INCF (PLACE &OPTIONAL (DELTA 1))

ATOMIC-INCF& (PLACE &OPTIONAL (DELTA 1))

ATOMIC-POP (PLACE)

ATOMIC-PUSH (VALUE PLACE)

ATOMIC-PUSHNEW (VALUE PLACE &REST ARGS)

SPAWN-FORM (&BODY BODY)

WITH-LOCK-HELD ((LOCK &KEY (WHOSTATE With Lock Held)) &BODY BODY)

WITH-TIMEOUT ((SECONDS &BODY TIMEOUT-BODY) &BODY TIMED-BODY)

WITHOUT-LOCK-HELD ((LOCK &KEY (WHOSTATE Without Lock Held)) &BODY BODY)

Private

Undocumented

DEFCM (&BODY BODY)

GENERIC-FUNCTION

Private

Undocumented

%%GET-LOCK%% (OBJ)

SLOT-ACCESSOR

Private

Undocumented

CONDITION-VARIABLE-CV (OBJECT)

CONDITION-VARIABLE-LOCK (OBJECT)

VARIABLE

Public

Undocumented

*PERIODIC-FUNCTION-VERBOSE*

*SCHEDULE-FUNCTION-VERBOSE*

Private

Undocumented

*ATOMIC-OPERATION-LOCK*

*MONTH-NAME-VECTOR*

*PORTABLE-THREADS-VERSION-KEYWORD*

*SCHEDULED-FUNCTION-SCHEDULER-THREAD*

*SCHEDULED-FUNCTIONS*

*SCHEDULED-FUNCTIONS-CV*

*SCHEDULED-FUNCTIONS-PAUSED?*

CLASS

Public

Undocumented

CONDITION-VARIABLE

SCHEDULED-FUNCTION

Private

Undocumented

RECURSIVE-LOCK

CONSTANT

Public

Undocumented

NEARLY-FOREVER-SECONDS