There are ways around this issue, especially if it is something you can break into chunks. For example, my kbinput asset when you are selecting what input to use for something, it does an input search until you press a key(or it times out). Since I can't have a separate function running at the same time, I simply do it with scripting. In the step event of an object, If "searching" do the search. The search loops through all the keys to see if any are pressed. It does this once a step. You could do something similar if you were importing a bunch of resources at run-time. I would have a list of what they are, and each step, import 1, updating variables in order to show a loading bar. Most tasks can be divided like that, allowing your game to not freeze while you do everything so you can show progress bars.