fix: add cancel function to the Timer API to make it behave correctly with finalizers and selectables
#14062
| Job | Run time |
|---|---|
| 2s | |
| 2s |