Use Rx Take() operator instead of CancellationToken