Что такое идиоматический аналог Ruby шаблона, который представляет потенциально отложенное асинхронное вычисление с возможностью подписаться на его завершение? то есть что-то вроде строк .NET System.Threading.Task
или Python 3.x concurrent.futures.future
.
Обратите внимание, что это не обязательно подразумевает многопоточность - фактическая реализация "будущего" объекта так же вероятно использует другой способ планирования работы и получения результата и выходит за рамки вопроса. Вопрос касается строго API, который предоставляется пользователю объекта.