Navigation
API > API/Runtime > API/Runtime/Core > API/Runtime/Core/Misc
References
| Module | Core |
| Header | /Engine/Source/Runtime/Core/Public/Misc/MTAccessDetector.h |
| Include | #include "Misc/MTAccessDetector.h" |
Syntax
class FMRSWRecursiveAccessDetector
Remarks
Race detector supporting multiple readers (MR) single writer (SW) recursive access, a write from inside a read, a read from inside a write and all other combinations. is zero initializable. supports destruction while being "accessed"
Constructors
| Type | Name | Description | |
|---|---|---|---|
FMRSWRecursiveAccessDetector
(
const FMRSWRecursiveAccessDetector& Other |
Just default initialisation, the copy is not being accessed |
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | |||
| void | AcquireReadAccess
(
FDestructionSentinel& DestructionSentinel |
An overload that handles access detector destruction from inside a read access, must be used along with the corresponding overload of `ReleaseReadAcess_ | |
| void | |||
| void | AcquireWriteAccess
(
FDestructionSentinel& DestructionSentinel |
An overload that handles access detector destruction from inside a write access, must be used along with the corresponding overload of `ReleaseWriteAcess_ | |
| void | |||
| void | ReleaseReadAccess
(
FDestructionSentinel& DestructionSentinel |
An overload that handles access detector destruction from inside a read access, must be used along with the corresponding overload of `AcquireReadAcess_ | |
| void | |||
| void | ReleaseWriteAccess
(
FDestructionSentinel& DestructionSentinel |
An overload that handles access detector destruction from inside a write access, must be used along with the corresponding overload of `AcquireWriteAcess_ |
Operators
| Type | Name | Description | |
|---|---|---|---|
| FMRSWRecursiveAccessDetector & | operator=
(
const FMRSWRecursiveAccessDetector& Other |
Do not alter the state, it can be accessed |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FDestructionSentinel |
Enums
| Type | Name | Description | |
|---|---|---|---|
| EAccessType | DestructionSentinel This access detector supports its destruction (along with its owner) while being "accessed". |
Typedefs
| Name | Description |
|---|---|
| FDestructionSentinelStackTls | A TLS stack of destruction sentinels shared by all access detector instances on the callstack. |
| FReadersTls |
Constants
| Name | Description |
|---|---|
| InvalidThreadId | Despite 0 is a valid TID on some platforms, we store actual TID + 1 to avoid collisions. |