This forum has been archived. Please start a new discussion on GitHub.

A question about bidirectional connection

Suppose there is a socket connection between peerA and peerB:
peerA <
> peerB

TheadA1 in peerA writes a lot of data to peerB as much as possible;
TheadA2 in peerA read data from peerB as quickly as possible;

TheadB1 in peerB writes data to peerA;
That is , there is no thead in peerB reading data from peerA;

My question:
What will happen at last ? I know TheadA1 in peerA will block, howabout TheadB1 in peerB and ThreadA2 in peerA ?



  • benoit
    benoit Rennes, France

    ThreadB1 and ThreadA2 shouldn't block and should continue receiving/sending data.

  • benoit
    benoit Rennes, France
    Actually, is your question just about TCP/IP sockets or are you trying to reproduce such a scenario with Ice? If it's the former, I would recommend sending this question to a more appropriate forum. If it's the latter, could you provide more information? By "write a lot of data", do you mean invoking on a oneway or twoway proxy? By "reading data", do you mean dispatching incoming requests? Please also explain why there's "no threads in PeerB to read the data from peerA".

    The best would be to provide a small example of what you're trying do, it would be easier to give you a precise answer!


  • My question just about TCP/IP sockets :)