FD_CLR()
изменяет только локальный fd_set
, который представляет собой структуру данных C для хранения информации о списке файловых дескрипторов.
close()
- системный вызов, закрывающий файловый дескриптор.
fd_set
используется в системном вызове select()
.С select()
вы получаете информацию о состоянии списка файловых дескрипторов, которые хранятся в вашей fd_set
struct.
Причина, по которой вы видите FD_CLR()
чуть ниже close()
, заключается в том, чтобольше нет необходимости / цели в запросе состояния, если описатель закрытого файла.