def receive(self, message): if message == ("_forward", ANY): _, payload = message self.actor << payload elif message == ("terminated", self.actor): _, actor = message if self.keep_running: spawn_later(1.0, self._do_spawn) else: self.stop() else: log("Contained actor sent a message to parent: %r" % (message,))
def receive(self, message): if message == ('_forward', ANY): _, payload = message self.actor << payload elif message == ('terminated', self.actor): _, actor = message if self.keep_running: spawn_later(1.0, self._do_spawn) else: self.stop() else: log("Contained actor sent a message to parent: %r" % (message, ))
def receive(self, message): if message == ('_forward', ANY): _, payload = message self.actor << payload elif message == ('terminated', self.actor): _, actor = message if self.keep_running: after(1.0).do(self._do_spawn) else: log("actor terminated but not re-spawning actor; pass --keepruning/-k to change this behaviour") self.stop() else: Events.log(Message("Contained actor sent a message to parent: %r" % (message,)))
def close(self): log() self.sock.sendMultipart((self.our_addr, DISCONNECT)) if not _actor.TESTING: # have to avoid this during testing, and it's not needed anyway; # during testing, since everything is running in the same thread with no remoting (by default) # this will unnecessarily give control back to the test which means stuff will happen in the middle # of closing. # XXX: this actually should be possible regardless of the above comment yield sleep(0) self._kill_queue() self._emit_termination_messages() self.sock.shutdown() self.sock = self.owner = None
def established(self, remote_version): log() self.known_remote_version = remote_version self._flush_queue() del self.queue