Beispiel #1
0
 def Terminate(self, req, context=None):
     if req.WhichOneof("terminate_type") == "task_object":
         try:
             object_ref = self.object_refs[req.client_id][
                 req.task_object.id]
             with disable_client_hook():
                 ray.cancel(
                     object_ref,
                     force=req.task_object.force,
                     recursive=req.task_object.recursive,
                 )
         except Exception as e:
             return_exception_in_context(e, context)
     elif req.WhichOneof("terminate_type") == "actor":
         try:
             actor_ref = self.actor_refs[req.actor.id]
             with disable_client_hook():
                 ray.kill(actor_ref, no_restart=req.actor.no_restart)
         except Exception as e:
             return_exception_in_context(e, context)
     else:
         raise RuntimeError(
             "Client requested termination without providing a valid "
             "terminate_type")
     return ray_client_pb2.TerminateResponse(ok=True)
Beispiel #2
0
 def Terminate(self, request, context=None):
     if request.WhichOneof("terminate_type") == "task_object":
         try:
             object_ref = cloudpickle.loads(request.task_object.handle)
             ray.cancel(object_ref,
                        force=request.task_object.force,
                        recursive=request.task_object.recursive)
         except Exception as e:
             return_exception_in_context(e, context)
     elif request.WhichOneof("terminate_type") == "actor":
         try:
             actor_ref = cloudpickle.loads(request.actor.handle)
             ray.kill(actor_ref, no_restart=request.actor.no_restart)
         except Exception as e:
             return_exception_in_context(e, context)
     else:
         raise RuntimeError(
             "Client requested termination without providing a valid "
             "terminate_type")
     return ray_client_pb2.TerminateResponse(ok=True)