# Sample: Task, TaskCompletionSource and the task lifecycle

`FileWatcherExtensions` turns a FileSystemWatcher event into an awaitable Task, which is the standard use
of TaskCompletionSource: an operation driven neither by a thread nor by I/O, but by a callback.

`Program.cs` shows where the continuation of a TaskCompletionSource runs, with and without
TaskCreationOptions.RunContinuationsAsynchronously.

    cd TaskLifecycle
    dotnet run -c Release

    cd TaskLifecycle.Tests
    dotnet run -c Release
