Haskell在kqueue上的并发性

Ant*_*ton 6 concurrency haskell epoll kqueue

我写了并发应用程序,并发现了错误:

buildFdSets:文件描述符超出范围

我发现它是一个进程中文件描述符数量的操作系统限制,在我的FreeBSD1024.这是极限select().我也了解到另一种方法:kqueue().

我的问题是:

  • 如何赢取文件描述符的限制?
  • 如何使用kqueue()而不是select()在haskell程序?

Ant*_*ter 4

我相信 GHC 7 现在支持在后端使用 kqueue() :

链接到论文描述性博客文章

然而,GHC 7 的 Haskell 平台尚未推出。