will callbacks from events ever interrupt each other? if i have a socket which gets data, so its event handler starts running the function i told it to, and data comes in on another socket, can i be sure that the second event's function won't start until the first one is finished? or would i have to introduce mutexes and/or semaphores?