4
私はselect()からkqueue()にいくつかのコードを移植していましたが、kevent()はselect()の "exception-set"機能のためのアナログを持っていないようです。 、と言う選択することであるselect()の "errorfds"セットに相当するkqueue()/ kevent()はありますか?
()の関数署名である:
int select(int nfds, fd_set *restrict readfds, fd_set *restrict writefds, fd_set *restrict errorfds, struct timeval *restrict timeout);
...とのkevent()と、EVFILT_READは(readfds)に対応し、EVFILT_WRITEは(writefds)に対応し、 EVFILT_ERRORのようなものは(errorfds)には対応しません。
kevent()の下でソケットエラー条件がサポートされていないのですか、それともそこにはありますか?
errorfdsには何が必要ですか?読み取りエラーは既に読み取りイベントによって報告され、書き込みエラーは書き込みイベントによって発生します(読み取りエラーまたは書き込み失敗による)。 –