docs: def _execute(self, sender, event_args):
          '''
          Event handler for timer that processes all queued messages.
          '''
          with self._lock:
              while not self._messages.empty():
                  msg, args, kwargs = self._messages.get(False)
                  for subscriber in self._subscribers[msg]:
                      try:
                          subscriber(*args, **kwargs)
                      except weakref.ReferenceError:
                          # Reference to handler is lost and it is OK to silence it
                          pass