summaryrefslogtreecommitdiff
path: root/src/delegate.erl
diff options
context:
space:
mode:
Diffstat (limited to 'src/delegate.erl')
-rw-r--r--src/delegate.erl5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/delegate.erl b/src/delegate.erl
index 5ed70351..8a795f52 100644
--- a/src/delegate.erl
+++ b/src/delegate.erl
@@ -98,6 +98,11 @@ invoke_per_node(NodePids, FPid) ->
lists:append(delegate_per_node(NodePids, FPid, fun internal_call/2)).
invoke_async_per_node([{Node, Pids}], FPid) when Node == node() ->
+ % This is not actually async! However, in practice FPid will always be
+ % something that does a gen_server:cast or similar, so I don't think
+ % it's a problem unless someone misuses this function. Making this
+ % *actually* async would be painful as we can't spawn at this point or we
+ % break effect ordering.
local_delegate(Pids, FPid);
invoke_async_per_node(NodePids, FPid) ->
delegate_per_node(NodePids, FPid, fun internal_cast/2),