Asynchronous I/O and non-blocking I/O are very different things. The POSIX aio* functions are asynchronous, not non-blocking. The "conventional" Unix way to do asynchronous I/O is to start a new thread for the transfer. The new thread uses ordinary synchronous I/O and then responds to completion any way you want. It is a rather easier model to program for than asynchronous I/O.
On Mon, 20 Apr 2020 at 04:15, dturczanski <m...@danielturczanski.com> wrote: > > Hi guys, > > I'm wondering whether Pharo support any form of non-blocking IO. You can > find such IO support in Node.js or Java NIO packages and on Linux they use > select/poll async IO system calls. > > An example scenario is to be able to schedule 10 concurrent HTTP calls > taking 1-5s and wait for them to finish. Naturally, if you perform the calls > sequentially you'll wait for much longer than if you fire the calls > concurrently. > > Is it possible in Pharo? I've only spent a few hours reading about the > platform but I'm still not sure whether the built-in process/threading > supports such scenario. > > > > -- > Sent from: http://forum.world.st/Pharo-Smalltalk-Users-f1310670.html >