Hirotaka Sasaki
hiro1****@mti*****
2007年 5月 30日 (水) 23:41:39 JST
中居さん 佐々木です。お疲れ様です。 On Wed, 30 May 2007 17:02:43 +0900 中居憲久 <nakai****@yes*****> wrote: > TO:佐々木様 > CC:皆様 > > > manの「poll()と同じ」という記述ですが、「poll()と同じ検出 > > 方式で、同様なイベントが通知される」といった意図で記述されてい > > るのではないか、と思います。なので、簡単に置き換えることが可能 > > だと。 > > なるほど、同じコードが使えるという意味なのですね。 > それは中居が勘違いしていました。 > > > そうすると、エッジトリガで動かして、イベントを取りこぼさない > > ように、epoll_ctl(MOD)を発行する場合と、発行しなくて良い > > 場合をうまく切り分けて処理できれば、一番良い感じですね。 > > 上記の方式を考慮して > 現状iomがcallbackによって遷移していく状態を書き出しています。 > iomの状態書き出しを行い、コレに対する状態遷移表を元に、 > enum等でiomに現状L7VS_IOMUX_READ等にしか使われていないflagを > 拡張して、上記状態遷移を持たせようと設計しています。 > > > 心配している処理としては、「例えば〜」で記述されているように、 > > 1つのイベントをもとに、関連する複数のソケットをcloseするよう > > な場合です。(およびcloseした後で、別コネクションで同じFD番号 > > のソケットが払い出される場合) > > この部分は上記の状態遷移を明確してFDをCloseしたという状態をiomに持たせ > ることで解決できると思っております。 > 多分考慮されていると思うのですが、 何度もしつこくて、申し訳ありません。 ソケットの状態管理も必要だと思いますが、現状の方式だと closeと 同時にiomを解放しているので、結局iom自体の管理は必要では、と思 っています。(方式を変更するとのことなので、後でガーベッジコレク ションする等、色々な方法はあるかと思いますが) > 現在遷移資料を作成しておりますので、まとまりましたらMLに流したいと思っ > ております。どうぞよろしくお願いいたします。 > お待ちしております。 宜しくお願い致します。 -- Hirotaka Sasaki <hiro1****@mti*****>