35 MaxPacket = 128 * 1024 - 8
99 SendBuffers.Add(Channel, SendBuffer);
135 check(It.Value()->Num());
137 if (!SendBuffer || It.Key() < Channel)
140 SendBuffer = It.Value();
151 if (OkToSendDelegate.Execute(
Size, Channel))
153 Data.AddUninitialized(
Size);
164 SendBuffers.Remove(Channel);
194 FPlatformAtomics::InterlockedAdd(&BytesSent, Data.Num());
223 EventToRestart =
NULL;
#define NULL
Definition oodle2base.h:134
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
#define DECLARE_DELEGATE_RetVal_TwoParams(ReturnValueType, DelegateName, Param1Type, Param2Type)
Definition DelegateCombinations.h:63
#define UE_LOG(CategoryName, Verbosity, Format,...)
Definition LogMacros.h:270
@ MultichannelMagic
Definition MultichannelTcpGlobals.h:14
uint32 Size
Definition VulkanMemory.cpp:4034
Definition BufferArchive.h:48
Definition MultichannelTcpSender.h:31
virtual uint32 Run()
Definition MultichannelTcpSender.h:120
virtual bool Init()
Definition MultichannelTcpSender.h:115
int32 GetBytesSent()
Definition MultichannelTcpSender.h:76
~FMultichannelTcpSender()
Definition MultichannelTcpSender.h:55
void Send(const uint8 *Data, int32 Count, uint32 Channel)
Definition MultichannelTcpSender.h:89
FMultichannelTcpSender(FSocket *InSocket, const FOnMultichannelTcpOkToSend &InOkToSendDelegate)
Definition MultichannelTcpSender.h:46
void AttemptResumeSendingInternal()
Definition MultichannelTcpSender.h:218
void AttemptResumeSending()
Definition MultichannelTcpSender.h:67
virtual void Stop()
Definition MultichannelTcpSender.h:203
virtual void Exit()
Definition MultichannelTcpSender.h:205
Definition RunnableThread.h:20
virtual bool Kill(bool bShouldWait=true)=0
static CORE_API FRunnableThread * Create(class FRunnable *InRunnable, const TCHAR *ThreadName, uint32 InStackSize=0, EThreadPriority InThreadPri=TPri_Normal, uint64 InThreadAffinityMask=FPlatformAffinity::GetNoAffinityMask(), EThreadCreateFlags InCreateFlags=EThreadCreateFlags::None)
Definition ThreadingBase.cpp:862
Definition ScopeLock.h:141
Definition ScopedEvent.h:19
void Trigger()
Definition ScopedEvent.h:29
Definition NetworkMessage.h:116
UE_FORCEINLINE_HINT SizeType AddUninitialized()
Definition Array.h:1664
UE_REWRITE SizeType Num() const
Definition Array.h:1144
void RemoveAt(SizeType Index, EAllowShrinking AllowShrinking=UE::Core::Private::AllowShrinkingByDefault< AllocatorType >())
Definition Array.h:2083
UE_NODEBUG UE_FORCEINLINE_HINT ElementType * GetData() UE_LIFETIMEBOUND
Definition Array.h:1027
Definition UnrealString.h.inl:34
static UE_FORCEINLINE_HINT void * Memcpy(void *Dest, const void *Src, SIZE_T Count)
Definition UnrealMemory.h:160