+str #15802 Make TickSource cancellable

I guess multiple PosionPills don't really harm, so really no need for compareAndSet