ssSetRuntimeThreadSafetyCompliance
Determine if the S-function can run multithreaded
Syntax
ssSetRuntimeThreadSafetyCompliance(SimStruct *S, int_T val)
Arguments
SSimStruct that represents an S-Function block.
valThreadsafety compliance setting. The setting can be:
RUNTIME_THREAD_SAFETY_COMPLIANCE_UNKNOWN— Declare that it is not known if the S-function is threadsafe.
RUNTIME_THREAD_SAFETY_COMPLIANCE_TRUE— Declare the S-function as threadsafe.RUNTIME_THREAD_SAFETY_COMPLIANCE_FALSE— Declare the S-function as not threadsafe.
Description
Use this macro in an S-function to set it as threadsafe, which means it can run
multithreaded. This setting works with the set_param function
MultithreadedSim block property. The behavior is:
| Option | MultithreadedSim Setting | S-Function Runs Single or Multithreaded |
|---|---|---|
RUNTIME_THREAD_SAFETY_COMPLIANCE_UNKNOWN | 'auto' | Single thread |
RUNTIME_THREAD_SAFETY_COMPLIANCE_TRUE | 'auto' | Multithread |
RUNTIME_THREAD_SAFETY_COMPLIANCE_FALSE | 'auto' | Single thread |
| — | 'off' | Setting is ignored and S-function block runs singlethreaded |
Languages
C, C++
Examples
See the S-function used in
matlabroot/toolbox/simulink/sfuntemplates/src/slexCoSimPrimeSFcn.c
Version History
Introduced in R2018a