Has a simple example of Dart event loop implementation
a) add the async keyword to the main() function. b) add the await keyword in front of the future object. Result: Once Dart encounters the await keyword, it sends all the code starting from that line to the event queue and waits for the future to complete. That’s why you see the number 2 before 3.
Asynchronous operations are not the same as parallel or concurrent. Asynchronous simply means that we do not want to block our flow of execution(Thread) or wait for the response until certain work is done in full. But the way we implement Asynchronous operations decides whether they are (running) as parallel or concurrent. So parallel and concurrent are two implementations of asynchronicity of tasks.