Skip to content

Commit ea0729d

Browse files
author
Oren (electricessence)
committed
Updates.
1 parent 763b1da commit ea0729d

2 files changed

Lines changed: 19 additions & 6 deletions

File tree

CancellableTask.cs

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,13 +32,14 @@ public bool Cancel()
3232

3333
protected static void Blank() { }
3434

35-
public void Dispose()
35+
protected override void Dispose(bool disposing)
3636
{
3737
Cancel();
38+
base.Dispose(disposing);
3839
}
3940

4041
protected CancellableTask(Action action, CancellationToken token)
41-
: base(action ?? Blank)
42+
: base(action ?? Blank, token)
4243
{
4344
}
4445

@@ -122,6 +123,18 @@ public static CancellableTask StartNew(Action action, TimeSpan? delay = null, Ta
122123
{
123124
return StartNew(delay ?? TimeSpan.Zero, action, scheduler);
124125
}
126+
127+
public static CancellableTask StartNew(Action<CancellationToken> action, TimeSpan? delay = null, TaskScheduler scheduler = null)
128+
{
129+
var ts = new CancellationTokenSource();
130+
var token = ts.Token;
131+
var task = new CancellableTask(()=>action(token), token)
132+
{
133+
TokenSource = ts
134+
};
135+
task.Start(delay ?? TimeSpan.Zero, scheduler);
136+
return task;
137+
}
125138
}
126139

127140
}

Open.Threading.Tasks.csproj

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,10 @@ Part of the "Open" set of libraries.</Description>
1414
<PackageLicenseUrl>https://github.com/electricessence/Open.Threading.Tasks/blob/master/LISCENSE.md</PackageLicenseUrl>
1515
<RepositoryType>git</RepositoryType>
1616
<PackageTags>dotnet, dotnet-core, dotnetcore, cs, extensions, actionrunner, cancellable, cancellabletask, progress, task-extensions</PackageTags>
17-
<Version>1.1.0</Version>
18-
<AssemblyVersion>1.1.0.0</AssemblyVersion>
19-
<FileVersion>1.1.0.0</FileVersion>
20-
<PackageReleaseNotes>Updated to .NET Standard for compatability.</PackageReleaseNotes>
17+
<Version>1.1.2</Version>
18+
<AssemblyVersion>1.1.2.0</AssemblyVersion>
19+
<FileVersion>1.1.2.0</FileVersion>
20+
<PackageReleaseNotes></PackageReleaseNotes>
2121
</PropertyGroup>
2222

2323
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">

0 commit comments

Comments
 (0)