39 Counter =
Other.GetValue();
45 if (
this == &
Other)
return *
this;
69 return FPlatformAtomics::InterlockedIncrement(&Counter);
81 return FPlatformAtomics::InterlockedAdd(&Counter, Amount);
92 return FPlatformAtomics::InterlockedDecrement(&Counter);
104 return FPlatformAtomics::InterlockedAdd(&Counter, -Amount);
116 return FPlatformAtomics::InterlockedExchange(&Counter,
Value);
127 return FPlatformAtomics::InterlockedExchange(&Counter, 0);
137 return FPlatformAtomics::AtomicRead(&Counter);
142 volatile int64 Counter;
Definition ThreadSafeCounter64.h:14
int64 Reset()
Definition ThreadSafeCounter64.h:125
int64 Set(int64 Value)
Definition ThreadSafeCounter64.h:114
int64 Add(int64 Amount)
Definition ThreadSafeCounter64.h:79
FThreadSafeCounter64(int64 Value)
Definition ThreadSafeCounter64.h:56
int64 GetValue() const
Definition ThreadSafeCounter64.h:135
int64 IntegerType
Definition ThreadSafeCounter64.h:16
FThreadSafeCounter64()
Definition ThreadSafeCounter64.h:23
FThreadSafeCounter64(const FThreadSafeCounter64 &Other)
Definition ThreadSafeCounter64.h:37
int64 Increment()
Definition ThreadSafeCounter64.h:67
int64 Decrement()
Definition ThreadSafeCounter64.h:90
FThreadSafeCounter64 & operator=(const FThreadSafeCounter64 &Other)
Definition ThreadSafeCounter64.h:43
int64 Subtract(int64 Amount)
Definition ThreadSafeCounter64.h:102