- Keep an
Actor
mono-threaded by means of aProxyInvoker
- Optimize for
ValueTask
calls, by making callers wait for anExecutionSlot
, and only then execute the call. This means thatOneWay
calls are defined by the user on a per call basis, just like on traditional .NET TPL.
No 2
seems to be achievable by simply not awaiting any calls, and just letting the .NET Threadpool do its thing. Therefore, no special dispatcher (work consumer/scheduler) needed.