code: def _sync(timeout=None):
      
      evt = WeakEvent(auto_reset=False)
  
      # first ensure that any pending callbacks from worker threads have been delivered
      # these are calls of _fromMain()
      Callback(evt.Signal)
      evt.Wait(timeout=timeout)
  
      evt.Reset() # reuse
  
      # grab the current set of inprogress cothreads/events
      wait4 = set(_handlers)
      # because Spawn.Wait() can only be called once, remove them and
      # use 'evt' as a proxy for what I'm waiting on so that overlapping
      # calls to _sync() will wait for these as well.
      # However, this means that our failure will must cascade to subsequent
      # calls to _sync() before we complete.
      _handlers.clear()
      _handlers.add(evt)
  
      try:
          WaitForAll(wait4, timeout=timeout)
      except Exception as e:
          evt.SignalException(e) # pass along error to next concurrent _sync()
      else:
          evt.Signal()
docs: I will wait until all pending handlers cothreads have completed