code: def __purge():
      
      global __receivers
      newreceivers = collections.defaultdict(list)
  
      for signal, receivers in six.iteritems(__receivers):
          alive = [x for x in receivers if not __is_dead(x)]
          newreceivers[signal] = alive
  
      __receivers = newreceivers
docs: Remove all dead signal receivers from the global receivers collection.
  
      Note:
          It is assumed that the caller holds the __lock.