글쎄, 제목은 그것의 대부분을 말합니다.fflush는 신호 처리기에서 호출해도 안전합니까?
내 응용 프로그램이 stdout/file에 로깅 중이라고 가정 해 봅시다. 그러나 종료 될 때 항상 완전히 플러시되지는 않습니다. 한 가지 해결책은 각 로깅 조치 후 플러시하는 것이지만 프로그램을 허용 할 수 없을 정도로 느려지 게 만듭니다.
그럼, 질문은 fflush(file)
입니다. 신호 처리기에서 호출해도 안전합니까? fflush(NULL)
?
그렇지 않은 경우 이유를 알려주십시오. 이 문제에 대한 다른 솔루션 솔루션이 있습니까? 파일 처리 루틴에 있지 않다는 것을 안다면 아마 안전할까요?
없음 [매뉴얼 페이지 (http://man7.org/linux/man-pages/man7/signal.7.html)에서 허가 기능 목록 신호 처리기 내부이 함수를 호출 알려주기 때문에 는 안전하다. 'fflush()'를 포함하지 않습니다. –