MCPcopy
hub / github.com/celery/celery / EagerResult

Class EagerResult

celery/result.py:986–1070  ·  view source on GitHub ↗

Result that we know has already been executed.

Source from the content-addressed store, hash-verified

984
985@Thenable.register
986class EagerResult(AsyncResult):
987 """Result that we know has already been executed."""
988
989 def __init__(self, id, ret_value, state, traceback=None, name=None):
990 # pylint: disable=super-init-not-called
991 # XXX should really not be inheriting from AsyncResult
992 self.id = id
993 self._result = ret_value
994 self._state = state
995 self._traceback = traceback
996 self._name = name
997 self.on_ready = promise()
998 self.on_ready(self)
999
1000 def then(self, callback, on_error=None, weak=False):
1001 return self.on_ready.then(callback, on_error)
1002
1003 def _get_task_meta(self):
1004 return self._cache
1005
1006 def __reduce__(self):
1007 return self.__class__, self.__reduce_args__()
1008
1009 def __reduce_args__(self):
1010 return (self.id, self._result, self._state, self._traceback)
1011
1012 def __copy__(self):
1013 cls, args = self.__reduce__()
1014 return cls(*args)
1015
1016 def ready(self):
1017 return True
1018
1019 def get(self, timeout=None, propagate=True,
1020 disable_sync_subtasks=True, **kwargs):
1021 if disable_sync_subtasks:
1022 assert_will_not_block()
1023
1024 if self.successful():
1025 return self.result
1026 elif self.state in states.PROPAGATE_STATES:
1027 if propagate:
1028 raise self.result if isinstance(
1029 self.result, Exception) else Exception(self.result)
1030 return self.result
1031 wait = get # XXX Compat (remove 5.0)
1032
1033 def forget(self):
1034 pass
1035
1036 def revoke(self, *args, **kwargs):
1037 self._state = states.REVOKED
1038
1039 def __repr__(self):
1040 return f'<EagerResult: {self.id}>'
1041
1042 @property
1043 def _cache(self):

Callers 10

_failed_join_reportMethod · 0.90
test_childrenMethod · 0.90
test_iterdepsMethod · 0.90
test_waitMethod · 0.90
test_forgetMethod · 0.90
test_populate_nameMethod · 0.90
applyMethod · 0.90

Calls

no outgoing calls

Tested by 9

_failed_join_reportMethod · 0.72
test_childrenMethod · 0.72
test_iterdepsMethod · 0.72
test_waitMethod · 0.72
test_forgetMethod · 0.72
test_populate_nameMethod · 0.72