Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ SendAsyncCore()

async Task System.Net.WebSockets.WebSocketBase.SendAsyncCore ( ArraySegment< byte > buffer,
WebSocketMessageType messageType,
bool endOfMessage,
CancellationToken cancellationToken )
inlineprivate

Definition at line 832 of file WebSocketBase.cs.

833 {
836 WebSocket.ThrowOnInvalidState(State, WebSocketState.Open, WebSocketState.CloseReceived);
837 bool ownsCancellationTokenSource = false;
839 try
840 {
841 while (true)
842 {
843 bool flag;
845 if (flag)
846 {
847 break;
848 }
851 {
853 if (keepAliveTask == null)
854 {
857 if (flag)
858 {
859 break;
860 }
862 }
863 }
864 await keepAliveTask.SuppressContextFlow();
867 }
868 if (System.Net.NetEventSource.Log.IsEnabled() && buffer.Count > 0)
869 {
870 System.Net.NetEventSource.DumpBuffer(this, buffer.Array, buffer.Offset, buffer.Count, "SendAsyncCore");
871 }
873 _sendOperation.BufferType = GetBufferType(messageType, endOfMessage);
874 await _sendOperation.Process(buffer, linkedCancellationToken).SuppressContextFlow();
875 }
876 catch (Exception exception)
877 {
878 bool isCancellationRequested = linkedCancellationToken.IsCancellationRequested;
879 Abort();
881 throw;
882 }
883 finally
884 {
886 }
887 }
static readonly System.Net.NetEventSource Log
static void DumpBuffer(object thisOrContextObject, byte[] buffer, int offset, int count, [CallerMemberName] string memberName=null)
bool TryStartOperation(CancellationToken userCancellationToken, out CancellationToken linkedCancellationToken)
void CompleteOperation(bool ownsCancellationTokenSource)
readonly OutstandingOperationHelper _sendOutstandingOperationHelper
static WebSocketProtocolComponent.BufferType GetBufferType(WebSocketMessageType messageType, bool endOfMessage)
void ThrowIfConvertibleException(string methodName, Exception exception, CancellationToken cancellationToken, bool aborted)
volatile WebSocketOperation.SendOperation _sendOperation
static string net_Websockets_AlreadyOneOutstandingOperation
Definition SR.cs:158
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
Definition SR.cs:7

References System.Net.WebSockets.WebSocketBase._keepAliveTask, System.Net.WebSockets.WebSocketBase._sendOperation, System.Net.WebSockets.WebSocketBase._sendOutstandingOperationHelper, System.Net.WebSockets.WebSocketBase.Abort(), System.buffer, System.cancellationToken, System.Net.WebSockets.WebSocketBase.OutstandingOperationHelper.CompleteOperation(), System.Net.NetEventSource.DumpBuffer(), System.Net.WebSockets.WebSocketBase.EnsureSendOperation(), System.exception, System.SR.Format(), System.Net.WebSockets.WebSocketBase.GetBufferType(), System.Net.NetEventSource.Log, System.SR.net_Websockets_AlreadyOneOutstandingOperation, System.Threading.CancellationToken.None, System.Net.WebSockets.WebSocketBase.SessionHandle, System.Net.WebSockets.WebSocketBase.ThrowIfConvertibleException(), System.Net.WebSockets.WebSocketBase.ThrowIfDisposed(), System.Net.WebSockets.WebSocketBase.ThrowIfPendingException(), System.Net.WebSockets.WebSocket.ThrowOnInvalidState(), and System.Net.WebSockets.WebSocketBase.OutstandingOperationHelper.TryStartOperation().

Referenced by System.Net.WebSockets.WebSocketBase.SendAsync().

0.0