linuxカーネル2.6.22からeventfdという、 ファイルI/Oでイベントをやりとりできる仕組みが組み込まれました。 eventfdの考え方が、私の設計と近いものがあったので、 さっそく使ってみました。 感想としては、Windowsの同期オブジェクトのような使い方に応用できるので、 設計の幅が広がるかな、という感じ。 性能的にはちゃんと調べていないのでよくわかりませんが、 特別重くなったとか反応が鈍いとかはありません。 サンプルを掲載します。(エラー処理はいいかげんです。。) 動作環境は、VMWare上のUbuntu7.10を8にアップグレードしたもの。 linux kernel 2.6.24-19 gcc version 4.2.3 glibc 2.7-1 です。 glibc 2.8から正式にeventfdが使えるみたいですが、 カーネルには入っているので、プロトタイプ宣言をして