def emit(self, *args, **kwargs): with self.lock: #logger.debug("Event emitted: {}".format(self.name)) for weakref_callback in self.callbacks[:]: callback = weakref_callback() if callback is not None: idle_queue.idle_add(callback, *args, **kwargs) else: #lost reference self.callbacks.remove(weakref_callback)
def trigger(self, event_name, *args): try: with _thread_lock: event_values = self.events_dict[event_name] except KeyError as err: logger.debug("No signals assosiated with: {0}".format(err)) else: logger.debug("Event triggered: {0}".format(event_name)) for callback, args2 in event_values.values(): idle_add(callback, *(args+args2)) #call in the main thread.
def trigger(self, event_name, *args): try: with _thread_lock: event_values = self.events_dict[event_name] except KeyError as err: logger.debug("No signals assosiated with: {0}".format(err)) else: logger.debug("Event triggered: {0}".format(event_name)) for callback, args2 in event_values.values(): idle_add(callback, *(args + args2)) #call in the main thread.
def emit(self, *args, **kwargs): with self.lock: #connected_methods = [callback.__name__ for callback in self.callbacks] #logger.debug("Event emitted: {}".format(self.name)) for weakref_callback in self.callbacks: callback = weakref_callback() if callback is not None: idle_queue.idle_add(callback, *args, **kwargs) else: #lost reference self.callbacks.remove(weakref_callback) #if not self.callbacks: #logger.debug("No signals assosiated to: {}".format(self.name))