DTasks 0.2.1
See the version list below for details.
dotnet add package DTasks --version 0.2.1
NuGet\Install-Package DTasks -Version 0.2.1
<PackageReference Include="DTasks" Version="0.2.1" />
<PackageVersion Include="DTasks" Version="0.2.1" />
<PackageReference Include="DTasks" />
paket add DTasks --version 0.2.1
#r "nuget: DTasks, 0.2.1"
#:package DTasks@0.2.1
#addin nuget:?package=DTasks&version=0.2.1
#tool nuget:?package=DTasks&version=0.2.1
About
DTasks provides the default implementation of the DTasks pattern using an extensible snapshot-based persistence model.
It enables durable and distributed workflows while keeping the API as close as possible to standard C# async
/await
semantics.
Usage
Define an async method returning DTask
or DTask<TResult>
and use the built-in awaitable methods or those defined in other libraries.
DTask
exposes an API similar to Task
.
public async DTask<int> ProcessAndSumDAsync(int left, int right)
{
DTask<int> processLeftTask = Processor.ProcessDAsync(left);
DTask<int> processRightTask = Processor.ProcessDAsync(right);
DTask processTask = DTask.WhenAll(processLeftTask, processRightTask);
DTask timeoutTask = DTask.Delay(TimeSpan.FromDays(1));
DTask winner = await DTask.WhenAny(processTask, timeoutTask);
if (winner == timeoutTask)
return 0;
return processLeftTask.Result + processRightTask.Result;
}
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
.NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
.NET Standard | netstandard2.1 is compatible. |
MonoAndroid | monoandroid was computed. |
MonoMac | monomac was computed. |
MonoTouch | monotouch was computed. |
Tizen | tizen60 was computed. |
Xamarin.iOS | xamarinios was computed. |
Xamarin.Mac | xamarinmac was computed. |
Xamarin.TVOS | xamarintvos was computed. |
Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- DTasks.Core (>= 0.2.1)
- System.Collections.Immutable (>= 8.0.0)
-
net8.0
- DTasks.Core (>= 0.2.1)
- System.Collections.Immutable (>= 8.0.0)
-
net9.0
- DTasks.Core (>= 0.2.1)
- System.Collections.Immutable (>= 8.0.0)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on DTasks:
Package | Downloads |
---|---|
DTasks.Serialization
Serialization-based implementation of the DTasks snapshot model. |
|
DTasks.Extensions.DependencyInjection
Provides integration of DTasks with Microsoft.Extensions.DependencyInjection. |
|
DTasks.Inspection.Dynamic
Enables state machine inspection by generating dynamic code. |
|
DTasks.AspNetCore.Core
Integrates DTasks into ASP.NET Core. |
GitHub repositories
This package is not used by any popular GitHub repositories.