class_docstr: A variant of threading.The timer that is daemonized
class_docstr_tok: ["A","variant","of","threading.The","timer","that","is","daemonized"]
docstr: Stop the timer if it hasn't finished yet.
docstr_tok: ["Stop","the","timer","if","it","has","n't","finished","yet","."]
code: def cancel(self):
      """Stop the timer if it hasn't finished yet."""
      self.finished.set()
  
imports: import contextlib
  import datetime
  from itertools import chain
  import os
  import time
  import threading
  from snakemake.logging import logger
label_desc: Use image node_id 2 for calling the DaemonTimer obj's underlying member method code with example usage: obj.cancel() without return types