The Caller and GenericCaller classes have both a defer method and a delayed method. The latter makes use of a DaemonTask which periodically checks whether or not it's time to execute a task.
In practice we've found that we'll often instantiate callers with no intention of ever using the delayed method, which means we're spinning up an extra thread for nothing. It would be better to have a keyword argument on instantiation which says whether delayed will be a supported method. If not then calling it will raise an exception.
The
Caller
andGenericCaller
classes have both adefer
method and adelayed
method. The latter makes use of aDaemonTask
which periodically checks whether or not it's time to execute a task.In practice we've found that we'll often instantiate callers with no intention of ever using the
delayed
method, which means we're spinning up an extra thread for nothing. It would be better to have a keyword argument on instantiation which says whetherdelayed
will be a supported method. If not then calling it will raise an exception.