Open1
miniio: libuvをイベントキュー型にしたい
数時間で終わると思っていた事が3日経っても終わっていないとは。。
libuvはイベントの通知をコールバックで行うスタイルになっている。が、コールバックの方をスクリプトにするのが地味に面倒なので通常のGUIライブラリ同様イベントキュー型に変更したい。
難しい点
原理的には、イベントキューに溜まったイベントを アプリケーションに渡さずに捨てる というケースが存在する。つまり、アプリケーションからsocketのcloseを要求されても、それまでにデータが到着してしまっている可能性がある。
とりあえずイベントは捨てず、アプリケーションがclose要求のcompletionを受け取るまでは、アプリ側はcloseしたとは思わないという感じで。。handleのユニークネスは保証しないということで。(アプリ側から渡すuserdataをユニークにすれば問題ないので)