Set _remote() function args and kwargs as optional (#4305)

This commit is contained in:
justinwyang
2019-03-09 16:40:14 -08:00
committed by Robert Nishihara
parent ba3fe04629
commit 5adb4a6941
3 changed files with 62 additions and 44 deletions
+12 -7
View File
@@ -125,7 +125,11 @@ class ActorMethod(object):
def remote(self, *args, **kwargs):
return self._remote(args, kwargs)
def _remote(self, args, kwargs, num_return_vals=None):
def _remote(self, args=None, kwargs=None, num_return_vals=None):
if args is None:
args = []
if kwargs is None:
kwargs = {}
if num_return_vals is None:
num_return_vals = self._num_return_vals
@@ -233,8 +237,8 @@ class ActorClass(object):
return self._remote(args=args, kwargs=kwargs)
def _remote(self,
args,
kwargs,
args=None,
kwargs=None,
num_cpus=None,
num_gpus=None,
resources=None):
@@ -255,6 +259,11 @@ class ActorClass(object):
Returns:
A handle to the newly created actor.
"""
if args is None:
args = []
if kwargs is None:
kwargs = {}
worker = ray.worker.get_global_worker()
if worker.mode is None:
raise Exception("Actors cannot be created before ray.init() "
@@ -293,10 +302,6 @@ class ActorClass(object):
actor_placement_resources = resources.copy()
actor_placement_resources["CPU"] += 1
if args is None:
args = []
if kwargs is None:
kwargs = {}
function_name = "__init__"
function_signature = self._method_signatures[function_name]
creation_args = signature.extend_args(function_signature, args,