Unity Invoke method delay factor vary device to device

Hello guys, I am using Invoke function to add some delay on my function calls.
Code is like this

void Start()
{
  Invoke("FirstMethod",10);
  Invoke("SecondMethod",20)
  Invoke("ThirdMethod",30)
  Invoke("ForthMethod",40)
}

I have some instructions to display on GUI in my “FirstMethod” that take up to 8 seconds to appear completely , after completion of it i want to display some other instructions that i have written in “SecondMethod” and so on…

I read about documentation of Invoke methods and it seems that this approach will work for my scenario. I want to make sure that how it run on different devices. specially the second parameter that we pass as time in Invoke method is dependent on frame rate or some other factor that may vary on different devices and the order of execution of method may disturb.

Please advise

Without extensive testing on every device you are not going to be able to find precise times for how long code take to execute. Even if you do a lot will still vary depending on what else the device is processing in the background.

A better method would be to use callbacks to find out when your device is finished processing.

If you must have different times for the invokes then you can use preprocessor directives