Ich denke, du meinst prozedural, und nicht deterministisch. In C# wird derzeit daran gearbeitet, ein asynchrones Programmiermodell zu ermöglichen, das die prozeduralen Programmieransätze, an die wir gewöhnt sind, besser abbildet. Siehe Jeffrey Richters IAsyncResult und das neue Async CTP von Microsoft.
F # und andere funktionale Sprachen haben seit einiger Zeit umfassende Asynchronmodelle. Letztendlich müssen Sie sich immer noch an die grundlegenden Prinzipien der Nebenläufigkeit halten: Isolation, Unveränderlichkeit und Synchronisation (normalerweise in dieser Reihenfolge). Ich empfehle die verschiedenen Whitepaper auf der oben genannten Website für einen Einblick, wie Concurrency in naher Zukunft zugänglicher sein sollte - zumindest in C#.
Was genau meinen Sie mit "linear"? –
Wenn Sie dem Ausführungsmuster folgen, erhalten Sie eine gerade Linie. – blueberryfields