Not quite. It will be queued when control returns to the event loop of the sending thread. This is very important. Why? Read on below.
AFAIK timeouts are compressed therefore if you have a timer that times out every... say... 2 seconds, but you are currently in a function that takes 10 seconds to exectute, there will only be one timeout instead of 5 as you might suspect. So the "other thread" (also it's the same for single threaded applications) will truly execute all timeouts it receives, but it may receive less timeouts than you might suspect based on the time passed between starting the timer and posting the event.he other thread will execute all invocations received, no matter how long this takes. So I think it would be possible to send 1 million invocations in a few seconds from thread one to make thread two work for a whole day (theoretical).
Bookmarks