以下のredisソースを読みました:
int aeCreateFileEvent(aeEventLoop *eventLoop, int fd, int mask,
aeFileProc *proc, void *clientData)
{
if (fd >= eventLoop->setsize) {
errno = ERANGE;
return AE_ERR;
}
aeFileEvent *fe = &eventLoop->events[fd];
//...
}
'fd' 引数は関数 socket または accept の戻り値であり、配列 'eventLoop->events' の添字として使用されます。「eventLoop->setsize」は 10000+1024=11024 に初期化されます。
だから私の質問は:関数ソケットまたは受け入れの戻り値の範囲は何ですか? なぜ配列の添え字として使用できるのですか?