class_docstr: Contains a running `Engine` object within a separate thread from main thread in a Jupyter notebook. This
  allows an engine to begin a run in the background and allow the starting notebook cell to complete. A
  user can thus start a run and then navigate away from the notebook without concern for loosing connection
  with the running cell. All output is acquired through methods which synchronize with the running engine
  using an internal `lock` member, acquiring this lock allows the engine to be inspected while it's prevented
  from starting the next iteration.
  
  Args:
      engine: wrapped `Engine` object, when the container is started its `run` method is called
      loss_transform: callable to convert an output dict into a single numeric value
      metric_transform: callable to convert a named metric value into a single numeric value
      status_format: format string for status key-value pairs.
class_docstr_tok: ["Contains","a","running","`","Engine","`","object","within","a","separate","thread","from","main","thread","in","a","Jupyter","notebook",".","This","allows","an","engine","to","begin","a","run","in","the","background","and","allow","the","starting","notebook","cell","to","complete",".","A","user","can","thus","start","a","run","and","then","navigate","away","from","the","notebook","without","concern","for","loosing","connection","with","the","running","cell",".","All","output","is","acquired","through","methods","which","synchronize","with","the","running","engine","using","an","internal","`","lock","`","member",",","acquiring","this","lock","allows","the","engine","to","be","inspected","while","it","'s","prevented","from","starting","the","next","iteration",".","Args",":","engine",":","wrapped","`","Engine","`","object",",","when","the","container","is","started","its","`","run","`","method","is","called","loss_transform",":","callable","to","convert","an","output","dict","into","a","single","numeric","value","metric_transform",":","callable","to","convert","a","named","metric","value","into","a","single","numeric","value","status_format",":","format","string","for","status","key-value","pairs","."]
docstr: Stop the engine and join the thread.
docstr_tok: ["Stop","the","engine","and","join","the","thread","."]
code: def stop(self):
      """Stop the engine and join the thread."""
      self.engine.terminate()
      self.join()
  
imports: from __future__ import annotations
  import copy
  from collections.abc import Callable, Mapping
  from enum import Enum
  from threading import RLock, Thread
  from typing import TYPE_CHECKING, Any
  import numpy
  import torch
  from monai.config import IgniteInfo
  from monai.utils.module import min_version, optional_import
label_desc: Use image node_id 3 for calling the ThreadContainer obj's underlying member method code with example usage: obj.stop() without return types