Lesson 2- Eventloops
- call_soon
- call_later
- run_forever - loops

Select operations
Eventloops can run only one things at a time. There is usually a :
selector or proactor
Reactors - reacts based on notifications used by reactors
twisted calls eventloops
I/0 completion Ports - changes. In windows you can use proactors and selctors. In Unix you can use selectors

Base_events - consists of base events, yet there is only while loops there

Python 3.5 implementation, then in `runonce`

Heart of heart of asyncio is select_once method which calls the proactors and is having selector.select(timeout) method



Uvloop for production, as it's doing a lot of magic and improvement in results. As it's fastest implementation with similar performance to NodeJS
Eventloop is just a normal function for handling netoworks requests and is used to handle callbacks. By what?

Eventloop is not magical, it's just a loop which handles network events and executes as callbacks one by one. It can handle many networks events concurrently with a selector or a proactor. While it can handle many callback, but only run one callback at a time. Some callbacks, run and come again with a trick called traumpaline
callsoon, calllater is difficult to run. But it's usually run using coroutine. These coroutines make asynchrnous programs easy and magical