特定のfdに対してepoll_wait
がEPOLLERR
を返すときに、errno
を見つける方法はありますか?epoll_waitがEPOLLERRを返すときにerrnoを取得する方法は?
エラーの種類についての詳しい情報はありますか?
編集:
ファイル記述子の数に曖昧に
epoll_wait
待機を防止するための追加情報を追加します。
struct epoll_event {
uint32_t events; /* Epoll events */
epoll_data_t data; /* User data variable */
};
epoll_data_t
構造は、あなたがのepollにファイルディスクリプタを追加するためにepoll_ctl
で使用したものと同じ内容を持っています:
typedef union epoll_data {
void *ptr;
int fd;
uint32_t u32;
uint64_t u64;
} epoll_data_t;
何がepoll_wait
呼び出すときはepoll_event
構造体の配列は、それを渡します私が探しているのは、epollが待っているファイルディスクリプタの1つにエラーがある場合です。
ie:epoll_event.events & EPOLLERR == 1
- ファイルディスクリプタのエラーの詳細を調べる方法はありますか?
返事の遅れて申し訳ありません - これは完全に働きました - ありがとう! :) –