【发布时间】:2012-05-08 11:31:43
【问题描述】:
我在 Haskell 平台上,GHC 6.12.1 作为 apt-get 安装在 Debian Squeeze 上。考虑到我需要它在与最初引发它的位置不同的线程上,我如何从 IOError 中获取底层 errno?
我需要这个的原因是因为我正在实现一个网络协议,该协议在网络上公开了实际的 errno 值。我需要重建它吗?
【问题讨论】:
我在 Haskell 平台上,GHC 6.12.1 作为 apt-get 安装在 Debian Squeeze 上。考虑到我需要它在与最初引发它的位置不同的线程上,我如何从 IOError 中获取底层 errno?
我需要这个的原因是因为我正在实现一个网络协议,该协议在网络上公开了实际的 errno 值。我需要重建它吗?
【问题讨论】:
errno 在 GHC 中是 thread-local。您需要将 errno 捕获在一个线程中;然后将值通过Chan 或其他通信抽象发送到您的侦听线程。
【讨论】: