コード例 #1
0
        public override void Dispose()
        {
            base.Dispose();

            _tcp.Dispose();
            _reader.Dispose();
        }
コード例 #2
0
        public void CanReadWriteData()
        {
            TcpReader connectingClient = null;

            using var connector        = new TcpConnector(out ushort port);
            connector.ClientConnected += Continue;
            connectingClient           = new TcpReader(IPAddress.Any, port);

            bool finished         = false;
            int? receivedAtClient = default;

            // int receivedAtListener = default;

            void Continue(object sender, NetworkStream e)
            {
                //Write to client / Read from client
                e.WriteByte(123);
                receivedAtClient = connectingClient.Read(1)[0];

                //Write to listener / Read from listener
                // connectingClient?.GetStream().WriteByte(213);
                // receivedAtListener = e.ReadByte();

                finished = true;
            }

            while (!finished)
            {
                Thread.Sleep(10);
            }

            Assert.AreEqual(123, receivedAtClient);
            // Assert.AreEqual(213, receivedAtListener);

            connectingClient?.Dispose();
        }