Открыть дескриптор файла в C - PullRequest
0 голосов
/ 08 марта 2012

У меня клиент-серверное приложение.Сервер находится в C. Сервер имеет следующую структуру:

int main (... ) {
FILE * fp;
fp = fopen("serverLog.log","w");


//init variables
//bind server
//listen server on port
  while(1) {
  //some code
  //accept
  //some code
  int check = pthread_create(&thread, NULL, handle_client,&ctx);

  } 
 fclose(fp);
 return EXIT_SUCCSESS;
}

Я запускаю сервер и закрываю его, используя CTRL + C.Что происходит с файловым дескриптором fd?Я полагаю, что он остается открытым.Если да, что я могу сделать с этим?Thx

1 Ответ

5 голосов
/ 08 марта 2012

Нет, он будет закрыт операционной системой. Когда ваш процесс завершится (чисто или принудительно), ядро ​​очистит все висячие дескрипторы.

...