class_docstr: Asynchronous equivalent to threading.Condition.
  
  This class implements condition variable objects. A condition variable
  allows one or more coroutines to wait until they are notified by another
  coroutine.
  
  A new Lock object is created and used as the underlying lock.
class_docstr_tok: ["Asynchronous","equivalent","to","threading.Condition",".","This","class","implements","condition","variable","objects",".","A","condition","variable","allows","one","or","more","coroutines","to","wait","until","they","are","notified","by","another","coroutine",".","A","new","Lock","object","is","created","and","used","as","the","underlying","lock","."]
docstr: By default, wake up one coroutine waiting on this condition, if any.
  If the calling coroutine has not acquired the lock when this method
  is called, a RuntimeError is raised.
  
  This method wakes up at most n of the coroutines waiting for the
  condition variable; it is a no-op if no coroutines are waiting.
  
  Note: an awakened coroutine does not actually return from its
  wait() call until it can reacquire the lock. Since notify() does
  not release the lock, its caller should.
docstr_tok: ["By","default",",","wake","up","one","coroutine","waiting","on","this","condition",",","if","any",".","If","the","calling","coroutine","has","not","acquired","the","lock","when","this","method","is","called",",","a","RuntimeError","is","raised",".","This","method","wakes","up","at","most","n","of","the","coroutines","waiting","for","the","condition","variable",";","it","is","a","no-op","if","no","coroutines","are","waiting",".","Note",":","an","awakened","coroutine","does","not","actually","return","from","its","wait","(",")","call","until","it","can","reacquire","the","lock",".","Since","notify","(",")","does","not","release","the","lock",",","its","caller","should","."]
code: def notify(self, n=1):
      """By default, wake up one coroutine waiting on this condition, if any.
      If the calling coroutine has not acquired the lock when this method
      is called, a RuntimeError is raised.
  
      This method wakes up at most n of the coroutines waiting for the
      condition variable; it is a no-op if no coroutines are waiting.
  
      Note: an awakened coroutine does not actually return from its
      wait() call until it can reacquire the lock. Since notify() does
      not release the lock, its caller should.
      """
      if not self.locked():
          raise RuntimeError("cannot notify on un-acquired lock")
  
      idx = 0
      for fut in self._waiters:
          if idx >= n:
              break
  
          if not fut.done():
              idx += 1
              fut.set_result(False)
  
imports: import collections
  import enum
  from .None import exceptions
  from .None import mixins
label_desc: Use image node_id 3 for calling the Condition obj's underlying member method code with example usage: obj.notify(n) without return types