class_docstr: The analysis context holds the pieces needed to route analysis requests
docstr: Cancel this analysis
  
  All analysis requests will receive BoundaryExited() after this
  method returns.
docstr_tok: ["Cancel","this","analysis","All","analysis","requests","will","receive","BoundaryExited","(",")","after","this","method","returns","."]
code: def cancel(self):
      """Cancel this analysis
  
      All analysis requests will receive BoundaryExited() after this
      method returns.
      """
      with self.lock:
          if self.cancelled:
              return
          self.cancelled = True
          self.upq = None
  
imports: from .communicable import Communicable
  from .communicable.reply.upstream_exit import BoundaryExited
label_desc: Use image node_id 4 for calling the AnalysisContext obj's underlying member method code with example usage: obj.cancel() without return types