InvokeRepeating doesn't work at 0.00002 seconds

Hello,

I am creating a game in which I can simulate digital circuitry and I would need to update every chip at about 0.00002 seconds or 20 microseconds.
I tried to achieve that by using

InvokeRepeating("GlobalTick", 0.01f, 0.00002f);

but the code doesn’t execute nearly close to that rate. How can I achieve a simulation of a tick at ~20 microseconds?

Please help, I’m banging my head over this for over 2 days.

EDIT :

I found a solution to my problem by using a MicroTimer class found HERE
By creating a seperate class to handle time, I can now update all chips at 1 microsecond (1Mhz)!

It’s unlikely that you actually need it to update that fast, but you could use threads to run a task separately from the Unity thread, and have it update at a specific rate (possibly involving Thread.Sleep or something). The Unity thread can then check the state of your thread from time to time as needed.

I found a solution to the problem by using a MicroTimer class found HERE
By creating a seperate class to handle time, it is now possible to run a function every microsecond!