Lets say I use the Dataflow blocks in .NET. It is stated that "This dataflow model promotes actor-based programming" Which is exaclty what I want to get at here.
However, if I process messages from, say a BufferBlock<T> and in the processor of the message, I decide to use async/await, this will fork out the execution to the current tread and a worker thread for the awaited task.
Is there any way to prevent concurrent execution within the actor/message processor here?
it's fine if the awaited task executes using non blocking IO ops with native callbacks. But I'd really like to ensure that the any .NET code is only executed in sync.