4

私はHaskellプラットフォーム、GHC 6.12.1をDebian Squeezeにインストールされたapt-getとして使用しています。最初に発生した場所とは別のスレッドで必要な場合、IOError から基になる errno を取得するにはどうすればよいですか?

これが必要な理由は、ネットワーク上で実際の errno 値を公開するネットワーク プロトコルを実装しているためです。再構築する必要がありますか?

4

1 に答える 1

5

errnoGHC ではスレッドローカルです。1 つのスレッドで errno をトラップする必要があります。次に、値をChanまたは他の通信抽象化でリッスン スレッドに送信します。

値自体は、スレッド TSO 構造体に格納されます。

于 2012-05-08T11:36:22.913 に答える