Hacker News new | ask | show | jobs
by rakoo 4232 days ago
Your actor-modelled example doesn't touch the idea behind promises, ie the background operations should return a result that is usable by the "main thread". In your example, that would be "result" being passed in some way to "more_random_other_work".

The way to do it would be closer to something like that:

    do_random_other_work();
    actor = spawn(function() {
      bfn_args = some_setup();
      result = blocking_fn(bfn_args);
      emit(result);
    });
    result = wait_for_result(actor)
    more_random_other_work(result);