I'm trying to use ProtocolBuffers over a NetworkStream but the messages are 
never fully received.

Here is my server:

var listener = new TcpListener(System.Net.IPAddress.Any, 4989);
listener.Start();

while (true)
{
    var client = listener.AcceptTcpClient();
    Task.Factory.StartNew(() =>
    {
        var message = ServerMessage.Parser.ParseFrom(client.GetStream());
        Console.WriteLine(message);
    });
}Here is my client:

Thread.Sleep(2000);//Wait for server to start

var client = new TcpClient();
client.Connect("localhost", 4989);

while (true)
{
    var message = new ServerMessage
    {
        Time = (ulong)DateTime.UtcNow.Ticks,
        Type = MessageType.Content
    };
    message.WriteTo(client.GetStream());

    Thread.Sleep(1000);
}


A full repro solution is available here: 
https://github.com/IanPNewson/ProtobufNetworkStreamIssue

What's going wrong?

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/protobuf/bc6de9dd-2849-4a22-838a-4e46e06724a3n%40googlegroups.com.

Reply via email to