How can I control execution order?

Hi, i am creating my own network solution and i am currently diving into the funny multithreading part and i got a few questions about Unreal 4:

  1. Is there anyway we can specify the execution order of classes?
  2. Are all the classes “tick” sequentially executed?
  3. Does Unreal 4 got any kind of mutex lock function?

It’s kind of incomplete answer and i’m not sure if you aware of this so i post this in comment.

There something called Tick groups allowing to specify in which stage of rendering tick is called, this also kind of allows you to control order
https://docs.unrealengine.com/latest/INT/API/RuntimeModules/Engine/Engine/ETickingGroup/index.html

Also you could try to explore source code, you might find answers to your questions there

FCriticalSection is our mutex object. If you look for examples of that in the code base you should see how to use it.

Thanks guys!