#include <threadbus.h>
Inherits AZ::EBusTraits.
Public Types | |
using | MutexType = AZStd::recursive_mutex |
Public Types inherited from AZ::EBusTraits | |
using | AllocatorType = AZ::Internal::EBusEnvironmentAllocator |
using | BusIdType = NullBusId |
using | BusIdOrderCompare = NullBusIdCompare |
using | BusHandlerOrderCompare = BusHandlerCompareDefault |
using | MutexType = NullMutex |
using | EventQueueMutexType = NullMutex |
template<class Bus > | |
using | ConnectionPolicy = EBusConnectionPolicy< Bus > |
template<class Context > | |
using | StoragePolicy = EBusEnvironmentStoragePolicy< Context > |
template<class Bus > | |
using | RouterPolicy = EBusRouterPolicy< Bus > |
using | EventProcessingPolicy = EBusEventProcessingPolicy |
template<typename DispatchMutex , bool IsLocklessDispatch> | |
using | DispatchLockGuard = AZStd::conditional_t< IsLocklessDispatch, AZ::Internal::NullLockGuard< DispatchMutex >, AZStd::scoped_lock< DispatchMutex > > |
template<typename ContextMutex > | |
using | ConnectLockGuard = AZStd::conditional_t< AZStd::is_same_v< ContextMutex, AZ::NullMutex >, AZ::Internal::NullLockGuard< ContextMutex >, AZStd::unique_lock< ContextMutex > > |
template<typename ContextMutex > | |
using | BindLockGuard = AZStd::scoped_lock< ContextMutex > |
template<typename ContextMutex > | |
using | CallstackTrackerLockGuard = AZStd::conditional_t< AZStd::is_same_v< ContextMutex, AZ::NullMutex >, AZ::Internal::NullLockGuard< ContextMutex >, AZStd::unique_lock< ContextMutex > > |
Public Member Functions | |
virtual void | OnThreadEnter (const AZStd::thread::id &id, const AZStd::thread_desc *desc)=0 |
Called when we enter a thread, optional thread_desc is provided when the use provides one. | |
virtual void | OnThreadExit (const AZStd::thread::id &id)=0 |
Called when we exit a thread. | |
Static Public Attributes | |
static const AZ::EBusHandlerPolicy | HandlerPolicy = AZ::EBusHandlerPolicy::Multiple |
static const AZ::EBusAddressPolicy | AddressPolicy = AZ::EBusAddressPolicy::Single |
Static Public Attributes inherited from AZ::EBusTraits | |
static constexpr EBusHandlerPolicy | HandlerPolicy = EBusHandlerPolicy::Multiple |
static constexpr EBusAddressPolicy | AddressPolicy = EBusAddressPolicy::Single |
static constexpr bool | EnableEventQueue = false |
static constexpr bool | EventQueueingActiveByDefault = true |
static constexpr bool | EnableQueuedReferences = false |
static constexpr bool | LocklessDispatch = false |
Additional Inherited Members | |
Protected Member Functions inherited from AZ::EBusTraits | |
~EBusTraits ()=default | |
ThreadEvents are used by user-code. You can connect to the ThreadEvents bus, and then be told whenever a new thread is spawned and when it dies.