indicates that an invalid use of the context synchronization facilities
has been detected.
Possible causes include:
- Presenting an invalid context identifier to join
detach executes an invalidcontext error if context is not a valid context
identifier or if the context has already been joined or detached.
- It is illegal to execute fork if there
has been any previous save not yet matched
by a restore. Attempting to do so will
cause an invalidcontext error.
- If context is not a valid context identifier, perhaps because the
context has terminated prematurely due to executing quit
or encountering an error, join executes an
invalidcontext error. This also occurs if the context has already been joined
or detached, if context identifies the current context, or if the context
does not share the current context's
- Executing monitor on a lock already held by the current context.
If lock is already held by the current context,
monitor executes an invalidcontext error without disturbing the lock.
If the current context has previously executed a save
not yet matched by a restore and lock
is already held by another context sharing the same local VM as the current
context, an invalidcontext error results.
- Executing wait on a lock not held by
the current context.
If lock is initially held by some other context or is not held by any context,
wait executes an invalidcontext error.
- Executing any of several synchronization operators when an
unmatched save is pending if the result would
be a deadlock.
The PostScript interpreter detects only the simplest types of deadlock.
It is possible to encounter deadlocks for which no invalidcontext error
index Postscript Index