private void ThreadBody() { while (!_disposed) { if (OnPackageReceived == null) { Thread.Sleep(500); continue; } OnPackageReceived?.Invoke(_cryptoProvider.Decrypt(BytePackageUtil.ReadPackage(_resourceFactory()))); } }
private void ThreadBody() { while (!Disposed) { byte[] package; while (this.outgoingPackageQueue.TryDequeue(out package)) { BytePackageUtil.WritePackage(_resourceFactory(), _cryptoProvider.Encrypt(package)); } this.flushEvent.WaitOne(5000); } }
private void ReadPackages() { while (!disposed) { try { byte[] package = BytePackageUtil.ReadPackage(_endpointConnection()); package = _cryptoProvider.Decrypt(package); if (package == null) { OnReadError(); return; } this.packageProcessor.Enqueue(package); } catch (Exception) { OnReadError(); } } }
private void Write(byte[] package) { BytePackageUtil.WritePackage(_streamFactory(), _cryptoProvider.Encrypt(package)); }