code: def __init__(self, max_collection=1) -> None:
      self.intersection = []
      self._thread_intersection = []
  
      self.max_collection = int(max_collection)
      self.condition = threading.Condition()
      self._lock = threading.Lock()
  
      self.collection = []
  
file_path: BigDL/python/ppml/src/bigdl/ppml/fl/psi/psi_intersection.py
imports: import logging
  import threading
  from bigdl.ppml.utils.log4Error import invalidOperationError
label_desc: Use image node_id 1 to create a new PsiIntersection object from inherited base classes: object with example: obj = PsiIntersection(max_collection)