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

◆ FinishOperationSyncSuccess()

void System.Net.Sockets.SocketAsyncEventArgs.FinishOperationSyncSuccess ( int bytesTransferred,
SocketFlags flags )
inlinepackageinherited

Definition at line 843 of file SocketAsyncEventArgs.cs.

844 {
845 SetResults(SocketError.Success, bytesTransferred, flags);
846 if (System.Net.NetEventSource.Log.IsEnabled() && bytesTransferred > 0)
847 {
849 }
850 SocketError socketError = SocketError.Success;
851 switch (_completedOperation)
852 {
853 case SocketAsyncOperation.Accept:
854 {
857 if (socketError == SocketError.Success)
858 {
860 if (System.Net.NetEventSource.Log.IsEnabled())
861 {
862 try
863 {
865 }
866 catch (ObjectDisposedException)
867 {
868 }
869 }
870 }
871 else
872 {
874 _acceptSocket = null;
876 }
877 break;
878 }
879 case SocketAsyncOperation.Connect:
881 if (socketError == SocketError.Success)
882 {
883 if (System.Net.NetEventSource.Log.IsEnabled())
884 {
885 try
886 {
888 }
889 catch (ObjectDisposedException)
890 {
891 }
892 }
895 }
896 else
897 {
900 }
901 break;
902 case SocketAsyncOperation.Disconnect:
904 _currentSocket._remoteEndPoint = null;
905 break;
906 case SocketAsyncOperation.ReceiveFrom:
907 {
908 _socketAddress.InternalSize = GetSocketAddressSize();
909 System.Net.Internals.SocketAddress socketAddress = IPEndPointExtensions.Serialize(_remoteEndPoint);
910 if (!socketAddress.Equals(_socketAddress))
911 {
912 try
913 {
915 }
916 catch
917 {
918 }
919 }
920 break;
921 }
922 case SocketAsyncOperation.ReceiveMessageFrom:
923 {
924 _socketAddress.InternalSize = GetSocketAddressSize();
925 System.Net.Internals.SocketAddress socketAddress = IPEndPointExtensions.Serialize(_remoteEndPoint);
926 if (!socketAddress.Equals(_socketAddress))
927 {
928 try
929 {
931 }
932 catch
933 {
934 }
935 }
937 break;
938 }
939 case SocketAsyncOperation.SendPackets:
941 break;
942 }
943 if (SocketsTelemetry.Log.IsEnabled())
944 {
946 }
947 Complete();
948 }
virtual EndPoint Create(SocketAddress socketAddress)
Definition EndPoint.cs:20
override bool Equals(object comparand)
static readonly System.Net.NetEventSource Log
static void Connected(Socket socket, object localEp, object remoteEp)
static void Accepted(Socket socket, object remoteEp, object localEp)
static void LogBytesTransferEvents(SocketType? socketType, SocketAsyncOperation operation, int bytesTransferred)
unsafe SocketError FinishOperationAccept(System.Net.Internals.SocketAddress remoteSocketAddress)
void SetResults(SocketError socketError, int bytesTransferred, SocketFlags flags)
System.Net.Internals.SocketAddress _socketAddress
unsafe? EndPoint LocalEndPoint
Definition Socket.cs:615
Socket UpdateAcceptSocket(Socket socket, EndPoint remoteEP)
Definition Socket.cs:3636
void UpdateStatusAfterSocketError(SocketException socketException)
Definition Socket.cs:3726

References System.Net.Sockets.SocketAsyncEventArgs._acceptSocket, System.Net.Sockets.SocketAsyncEventArgs._completedOperation, System.Net.Sockets.SocketAsyncEventArgs._connectSocket, System.Net.Sockets.SocketAsyncEventArgs._currentSocket, System.Net.Sockets.SocketAsyncEventArgs._remoteEndPoint, System.Net.Sockets.Socket._rightEndPoint, System.Net.Sockets.SocketAsyncEventArgs._socketAddress, System.Net.NetEventSource.Accepted(), System.Net.Sockets.SocketAsyncEventArgs.Complete(), System.Net.NetEventSource.Connected(), System.Net.EndPoint.Create(), System.Net.Internals.SocketAddress.Equals(), System.Net.Sockets.SocketAsyncEventArgs.FinishOperationAccept(), System.Net.Sockets.SocketAsyncEventArgs.FinishOperationConnect(), System.Net.Sockets.SocketAsyncEventArgs.FinishOperationReceiveMessageFrom(), System.Net.Sockets.SocketAsyncEventArgs.FinishOperationSendPackets(), System.Net.Sockets.SocketAsyncEventArgs.GetSocketAddressSize(), System.Net.Sockets.Socket.LocalEndPoint, System.Net.NetEventSource.Log, System.Net.Sockets.SocketsTelemetry.Log, System.Net.Sockets.SocketAsyncEventArgs.LogBuffer(), System.Net.Sockets.SocketAsyncEventArgs.LogBytesTransferEvents(), System.Net.Sockets.Socket.RemoteEndPoint, System.Net.Sockets.IPEndPointExtensions.Serialize(), System.Net.Sockets.SocketAsyncEventArgs.SetResults(), System.Net.Sockets.Socket.SetToConnected(), System.Net.Sockets.Socket.SetToDisconnected(), System.Net.Sockets.Socket.UpdateAcceptSocket(), and System.Net.Sockets.Socket.UpdateStatusAfterSocketError().

Referenced by System.Net.Sockets.SocketAsyncEventArgs.DoOperationSendPackets(), System.Net.Sockets.SocketAsyncEventArgs.FinishOperationAsyncSuccess(), and System.Net.Sockets.SocketAsyncEventArgs.FinishOperationSync().