private async void OnClientConnectionChanged(ConnectionStateType type) { switch (type) { case ConnectionStateType.Connected: dataReader = new DataReader(clientSocket.InputStream); dataReader.InputStreamOptions = InputStreamOptions.Partial; dataReader.UnicodeEncoding = Windows.Storage.Streams.UnicodeEncoding.Utf8; dataReader.ByteOrder = Windows.Storage.Streams.ByteOrder.LittleEndian; //canclRead = new CancellationTokenSource(); dataWriter = new DataWriter(clientSocket.OutputStream); Handshake(); if (parentDispatcher != null) { await parentDispatcher.RunAsync(CoreDispatcherPriority.Normal, () => OnListen()); } break; case ConnectionStateType.Disconnected: //canclRead.Cancel(); //canclRead.Dispose(); dataWriter = null; break; default: break; } }
static ApiRequestEngine() { RandomGenerator = new Random(Environment.TickCount); #if NETCOREAPP HttpHandler = new SocketsHttpHandler { MaxConnectionsPerServer = int.MaxValue }; #elif NETSTANDARD HttpHandler = new HttpClientHandler { MaxConnectionsPerServer = int.MaxValue }; #endif HttpClient = new HttpClient(HttpHandler) { Timeout = TimeSpan.FromMinutes(5) }; JsonSettings = new JsonSerializerSettings { EqualityComparer = StringComparer.OrdinalIgnoreCase }; ConnectionState = ConnectionStateType.Connected; }
public static void OnConnectionStateChanged(object sender, ConnectionStateType newState) { var oldState = Interlocked.Exchange(ref _connectionState, (int)newState); if (oldState == (int)newState) { return; } ConnectionStateChanged?.Invoke(sender, new ConnectionStateChangedEventArgs((ConnectionStateType)oldState, newState)); }
public ConnectionStateChangedEventArgs(ConnectionStateType oldState, ConnectionStateType newState) { OldState = oldState; NewState = newState; }
public static void OnConnectionStateChanged(ConnectionStateType newState) { OnConnectionStateChanged(null, newState); }