How to combine TaskCompletionSource and CancellationTokenSource?

I have such code (simplified here) which awaits finishing task: var task_completion_source = new TaskCompletionSource<bool>(); observable.Subscribe(b => { if (b)