For a simple explanation I have two processes that run on the same computer. Process 1 sends messages to Process 2 by putting the messages into an Interprocess message queue that Process 2 created.
Process 2 sends messages to Process 1 by putting the messages into an Interprocess message queue that Process 1 created.
The messages can be sent at any time and are not in response to each other.
Now I want to put Process 1 and Process 2 on separate computers. My intent is to transfer the messages over TCP to the opposite computer without changing Process 1 or 2.
So I thought I’d create two connector programs. Connector 1 creates a message queue that pretends to be the Process 2 message queue. When it gets a message, it send it over TCP the Connector 2. Connector 2 gets the message and puts it into the real Process 2 message queue.
And the reverse if Process 2 has an outgoing message.
I just can’t find a good example to steal from. Everything I can find are more like Process 1 makes a request and Process 2 responds.
So I think I have a fundamental misunderstanding of how ASIO works.