I am wondering if there is a difference between using AsyncResult with wait() and I/O blocking code. To explain more clearly imagine you are calling some function and waiting for some event to fire, in this case, we can use AsyncResult to block the code until the event fires. On the other hand, let us send HTTP request to some server and wait for some JSON response, this request blocks the code until it returns some data. Should I always use AsyncResult when blocking the code or is it okay to block code with I/O process? I want to block the code in either case.
All these processes will run in a spawned greenlet. What I wondering is that blocking code with I/O will ever slow down other spawned greenlets?