O que o select (2) faz se você fechar (2) um descritor de arquivo em um thread separad

Qual é o comportamento doselect(2) função quando um descritor de arquivo que ele está assistindo para leitura é fechado por outro threa

De alguns testes superficiais, ele retorna imediatamente. Suspeito que o resultado seja: (a) ainda continue aguardando os dados, mas se você realmente tentar lê-los, obterá EBADF (possivelmente - há uma corrida em potencial) ou (b) que ele finge que o descritor de arquivo nunca foi passado. Se o último caso for verdadeiro, passar um único fd sem tempo limite causaria um impasse se fosse fechado.

questionAnswers(4)

yourAnswerToTheQuestion