Defines the opaque NvSciSyncFence.
This structure describes a synchronization primitive snapshot that must be reached to release the waiters.
Unlike NvSciSyncAttrList and NvSciSyncObj objects, applications are responsible for the memory management of NvSciSyncFences.
Every NvSciSyncFence must be initialized to all zeros after its storage is allocated before the first time it is passed to any NvSciSync API calls. NvSciSyncFenceInitializer can be used for this, or memset(), or any other mechanism for zeroing memory.
Every NvSciSyncFence not in a cleared state holds a reference to the NvSciSyncObj it is related to, preventing that NvSciSyncObj from being deleted. It also contains id and value of the synchronization primitive corresponding to the desired snapshot.
In case if the corresponding NvSciSyncObj supports timestamps, this structure also contains information about the memory location of the timestamp of the event unblocking the NvSciSyncFence.
This structure also contains information about the memory location of the status of the task triggering the event unblocking the NvSciSyncFence.
Definition at line 256 of file nvscisync.h.
Data Fields | |
uint64_t | payload [6] |
uint64_t NvSciSyncFence::payload[6] |
Definition at line 257 of file nvscisync.h.