나는 C로 프로그램을 작성하여 파일에 일련의 문자를 쓰려고했습니다. 5 개의 영숫자와 그 다음 하나는 (char)(30)
, 'record-delimiter' 문자, 반복 ... 개행 문자가 없습니다. 프로그램은 508 번째 반복 (3048 자)에 도달 할 때까지 완벽하게 반복 할 수 있습니다. 그런 다음 죽어서 파일에 액세스 할 수 없다고 말합니다.유닉스에서 C로 파일 쓰기 프로그램을 열거 나 닫습니다.
이 시퀀스가 기록 될 때마다 프로그램의 구조가 파일을 닫고 다시 열어야하므로 (스크립트는 더 큰 의사 데이터베이스 시뮬레이트 모듈의 일부 임), 열린/쓰기/close process ... 데이터베이스 모듈 코드를 해부하기 전에 (꽤 많은 행이 있기 때문에 그것을 피할 수 있으면 안된다.), 거의 읽지 않은 것을 알고 있는지 궁금해했다./유닉스에서 쓰기 제한, 특정 제한 시간 내에 파일에 3048 문자가있는 문제 또는 파일에 508 {30}이있는 문제 또는 이와 비슷한 간단한 (그러나 잡기는 어렵습니다.) 내가 그것을 fclosed로 우연히 fopening 또는 오프 그 자체를 넘어 트립시 - 오프 기회에 몇 밀리미터로 읽기/쓰기 지연했지만 시가 없습니다.
왜이 문제를 나타내는 최소한의 샘플을 보여주십시오. 가능성이있다 (버퍼, filedescriptors, 다른 것들). – sehe