以下の内容はhttps://hiratara.hatenadiary.jp/entry/2017/03/12/214521より取得しました。


Server::Starter を利用できるサーバの実装

http://qiita.com/hiratara/items/2dacf8470c378b130d5c に書いたとおり。

下回りが苦手なので色々調べたのだけど、今回もGREEhttps://github.com/gree/haskell-prefork なるリポジトリが役に立った。 fork するだけじゃんと思って中を読むと、環境変数仕掛けた上で createProcess 使って自分自身を再度立ち上げる と言った涙ぐましい実装をしていたりする。古い unix パッケージの forkProcess のマルチコアで動いているとフォークできないみたいな制約を嫌ったのか、もしくは別のハマりどころがあってこんな実装をしているのか。

今回一番ハマったのが O_NONBLOCK にしないといけないってことだったのだけど、先のGREEのパッケージの例だと元のファイルディスクリプタHaskell で作っているので問題にならなかったのね、きっと。ちなみにその問題は、 waiのこのissued を見て解決した。

以前 Test::TCP 的なもの探したときもGREEhttps://github.com/gree/haskell-test-sandbox に当たった記憶がある。GREEすごい。




以上の内容はhttps://hiratara.hatenadiary.jp/entry/2017/03/12/214521より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14