GHC运行时如何处理文件I / O?
关于GHC运行时内部的一些论文提到它使用epoll / kqueue / poll来检测文件描述符是否准备好读/写。
我可以理解它是如何完成套接字I / O的。 但是磁盘文件访问呢? 轮询系统调用不适用于普通文件,仅适用于套接字I / O; 真正?
我能想象到的唯一选择是使用线程池来阻塞系统调用,每个线程请求一个线程...
在无螺纹的RTS中,整个运行时间将被阻塞。 在线程化的RTS中,它会通过线程池来执行安全的外部调用,所以功能不会被阻塞。
链接地址: http://www.djcxy.com/p/20641.html