Centosボックス内のイベントを処理するためにkqueueの特定の機能をエミュレートしています(FreeBSDからいくつかのコードを移植しています)が、void *udata
inの目的を理解できていませんstruct kevent
:
struct kevent {
uintptr_t ident; /* identifier for this event */
short filter; /* filter for event */
u_short flags; /* action flags for kqueue */
u_int fflags; /* filter flag value */
intptr_t data; /* filter data value */
void *udata; /* opaque user data identifier */
};
検索してみましたが、このフィールドについて見つけた最長の文献は、「カーネルを変更せずに渡された不透明なユーザー定義値」です。これはあまり役に立ちません。
誰かがこの分野が何であるかをはっきりと私に説明できますか?そして、誰かがそれを何のために使うことができますか?