FabricSynchronization Extension’s Free Functions¶
Acquire ( in Ref<SimpleLock> simpleLock )
Acquires a lock. If it takes more than lock.maxWaitSeconds
, an exception is thrown.
Acquire ( in Ref<SimpleLock> simpleLock, in Scalar maxWaitSeconds )
Acquires a lock. If it takes more than maxWaitSeconds
, an exception is thrown.
ActiveWait ( in Scalar seconds )
Helper function for waiting actively during a specific timelapse.
AtomicSet ( io UInt32 value, in UInt32 newValue )
AtomicSet ( io UInt8 value, in UInt8 newValue )
BeginKLDFGBindingExecution ()
EnableAsynchronousEvaluation ( in Boolean enable )
EnableMultithreading ( in Boolean enable )
EndKLDFGBindingExecution ()
ForceDecreaseLogTraceIndent ()
ForceIncreaseLogTraceIndent ()
ForceLogSubTrace ( in String trace )
ForceLogSubTrace: will log no matter GetLoggingLevel()
ForceLogTrace ( in String trace )
ForceLogTrace: will log no matter GetLoggingLevel()
Ref<AsyncTaskQueue> GetAsyncTaskQueue ()
Gets the AsyncTaskQueue singleton
Ref<ComputeContext> GetComputeContext ()
NOTE: a Ref<> function will leak: see EDK issue #3327...
UInt32 GetLoggingLevel ()
UInt32 GetMultithreadingDepth ()
Returns the current multithreading depth for this thread (0 == no multithreading).
注釈
This is only relevant if parallel execution is bracketed with a MultithreadAdvisorBracket
Boolean IsCurrentThreadExecutingAsync ()
Boolean IsMultithreading ()
Returns true if multithreading is currently active for this thread.
注釈
This is only relevant if parallel execution is bracketed with a MultithreadAdvisorBracket
LogActiveWaitTime ( in Float32 time )
LogSubTrace ( in String trace )
LogTrace ( in String trace )
MicroSleep ( in UInt32 ms )
MicroSleepWait ( in UInt32 ms )
Boolean MultithreadingEnabled ()
Release ( in Ref<SimpleLock> simpleLock )
Releases a lock.
SetLoggingLevel ( in UInt32 level )
SimpleAcquire ( io UInt32 lockVariable )
SimpleRelease ( io UInt32 lockVariable )
ThreadSafeClearFlag ( io UInt32 val, in UInt8 flag, in Boolean threadsafe )
ThreadSafeInc ( io UInt32 value, in Boolean threadsafe )
ThreadSafeSet ( io UInt32 value, in UInt32 newValue, in Boolean threadsafe )
ThreadSafeSet ( io UInt8 value, in UInt8 newValue, in Boolean threadsafe )
ThreadSafeSetFlag ( io UInt32 val, in UInt8 flag, in Boolean threadsafe )
Boolean TryAcquire ( in Ref<SimpleLock> simpleLock )
Tries to acquire a lock immediately and will return false
if failed.
Boolean TryAcquire ( in Ref<SimpleLock> simpleLock, in Scalar maxWaitSeconds )
Tries to acquire a lock for maxWaitSeconds
seconds. Will return false
if failed.
Boolean TryAcquire ( io UInt32 lockVariable )
WaitForAllAsyncTasks ()
UInt32 _GetLoggingLevel ()
_SetLoggingLevel ( in UInt32 level )