You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
System threads, such as server endpoints, filesystems etc... need a way to receive messages from processes. For instance, an API server receives a message, unmarshals it, creates an internal message, and sends it to the pid responsible. When the pid needs to reply with the message it needs a way to send it back to the API server so it can marshal a reply and send it to the client.
There are two ways to do this:
Hardcode the receivers in the processes and have them do the send on the channel directly
Register a sender keyed by Pid with the executor. Then return the reply to be sent from the pid just as with other envelopes.
We choose #2 since it enables easier testing and continues to not allow side effects outside the process.
For system thread PIDs I think we should make them part of the 'system' group in the Pid group field. This way the senders can be easily found by looking them up in a HashMap and also prevent the lookup of non system pids for normal envelope sending.
The text was updated successfully, but these errors were encountered:
System threads, such as server endpoints, filesystems etc... need a way to receive messages from processes. For instance, an API server receives a message, unmarshals it, creates an internal message, and sends it to the pid responsible. When the pid needs to reply with the message it needs a way to send it back to the API server so it can marshal a reply and send it to the client.
There are two ways to do this:
We choose #2 since it enables easier testing and continues to not allow side effects outside the process.
For system thread PIDs I think we should make them part of the 'system' group in the Pid group field. This way the senders can be easily found by looking them up in a HashMap and also prevent the lookup of non system pids for normal envelope sending.
The text was updated successfully, but these errors were encountered: