def test_process_close(): with ProcessActor.spawn(EchoProcessActor) as p, ActorRef(p.address()) as p_ref: assert p_ref.is_alive() p_ref.close_actor() assert not p_ref.is_alive() for _ in range(200): try: if os.waitpid(p.pid, os.WNOHANG) == (0, 0): break except ChildProcessError: break time.sleep(0.01) else: assert False
def process_actor(): """A process actor""" with ProcessActor.spawn(EchoProcessActor) as proxy: yield proxy
def test_process_spawn_with_args(): with ProcessActor.spawn(ArgProcessActor, k=3) as p, ActorRef(p.address()) as p_ref: result = p_ref.sync('echo') assert result['k'] == 3