 |
PK_THREAD_is_in_kernel |
|
PK_ERROR_code_t PK_THREAD_is_in_kernel
(
--- returned arguments ---
PK_LOGICAL_t *const is_in_kernel, --- whether called from within the kernel
PK_LOGICAL_t *const is_protected, --- whether called from protected region
PK_LOGICAL_t *const is_subthread, --- whether called from internal thread
PK_LOGICAL_t *const is_excluding --- whether function is excluding threads
)
This function returns whether the calling thread is executing inside the
kernel.
Being only inside this function does not constitute being inside the kernel.
The argument 'is_protected' returns whether kernel code being executed, if
any, may change the model. The argument 'is_subthread' returns whether the
calling thread is an internal Parasolid thread rather than that of the
application (see PK_SESSION_set_smp). The argument 'is_excluding' returns
whether the function is currently excluding other threads from entering
Parasolid.
This function may only be called when the modeller is started.