如何在Haskell中使用aio_read(3)?
在Linux中,可以通过从C调用异步读取文件。结构是参数之一,可以指定不同的选项,以便在操作完成时通知。让我总结一下:如何在Haskell中使用aio_read(3)?,haskell,asynchronous,io,Haskell,Asynchronous,Io,在Linux中,可以通过从C调用异步读取文件。结构是参数之一,可以指定不同的选项,以便在操作完成时通知。让我总结一下: SIGEV\u无无通知 可使用aio_错误(3)检查状态。操作是异步的,但必须在某个循环中等待完成,这不是我想要的 SIGEV_信号向进程发出信号 理论上,这可以通过在Haskell中安装一个信号处理器来实现。但是有一个问题:SignalInfo的API没有包含关键的si_值,让我们交流一些关于读取请求的细节,比如StaticPtr。这是不幸的 SIGEV_线程根据文档,这将
- SIGEV\u无无通知 可使用aio_错误(3)检查状态。操作是异步的,但必须在某个循环中等待完成,这不是我想要的
- SIGEV_信号向进程发出信号
理论上,这可以通过在Haskell中安装一个信号处理器来实现。但是有一个问题:
的API没有包含关键的SignalInfo
,让我们交流一些关于读取请求的细节,比如si_值
。这是不幸的StaticPtr
- SIGEV_线程根据文档,这将启动一个新线程
我不知道如何在Haskell中表达这一点。我最好的猜测是一个
操作。我不知道如何编写附带的本机代码IO()
我如何在Haskell中使用
aio_read
或类似的东西?我可能不会在这个(或图书馆)上使用FFI