Blueprint Async Function?

No it doesn’t.

You can’t have two things happen on the same thread and have one not block the execution of the other. This is literally the antithesis of what a thread is.

Events ARE synchronous by default, otherwise they’d get the little clock on the top right of their rectangle. A common misconception seems to be that events somehow immediately spawn a new thread automatically, that’s just not the case. And for most usecases, this would be incredibly wasteful.

However: events, contrary to functions (at least the vanilla type), do allow asynchronous nodes to be used during their execution. And yes, in that specific case, anything after the async node will happen later. Even with a delay of 0ms, things will get processed outside of the current stack.

ClockworkOcean demonstrates this in a very simple way here: Are Events Synchronous or Asynchronous?

Do 8000 events modifying a single file, and it will work prefectly. Introduce a delay, and it “all goes out the window”. That’s because they are only async under specific circumstances.

4 Likes