Asynchronous ffunctions

the callbacks in asynchronouus functions are always executed at the end of the thread when all function and statements are executed
or
callbacks can be executed immidiately when the request/data comes back to us and then other remainings statements and function will get executed

i mean to say that does callback function interrupt the flow of program or are executed at end without interrupting flow of prog