file_put_contents('test.txt',$data,FILE_APPEND|LOCK_EX);
위에서 설명한 것처럼 파일에 많은 양의 데이터를 쓰는 경우 파일에 배타적 잠금이 있으므로 후속 file_put_contents에도 데이터를 써야 합니다. , 후속 file_put_contents가 이전 파일 쓰기 작업이 완료될 때까지 기다리는 대기열이 될지 여부
file_put_contents('test.txt',$data,FILE_APPEND|LOCK_EX);
위에서 설명한 것처럼 파일에 많은 양의 데이터를 쓰는 경우 파일에 배타적 잠금이 있으므로 후속 file_put_contents에도 데이터를 써야 합니다. , 후속 file_put_contents가 이전 파일 쓰기 작업이 완료될 때까지 기다리는 대기열이 될지 여부
예, file_put_contents의 구현은 실제로 fopen, fwrite, fflush 및 fclose 작업 집합의 간단한 구현입니다. LOCK_EX가 추가되면 fopen도 무리를 실행하고 이 코드는 실행을 계속하기 전에 파일 잠금이 해제될 때까지 차단됩니다. 이 대기는 대기열로 정렬됩니다.
또한 지나치게 큰 파일 쓰기는 PHP의 최대 실행 이벤트를 초과할 수 있으며 데이터 손실의 위험이 있으므로 데이터가 중요하다면 직접 대용량 쓰기 대기열을 구현하는 것이 좋습니다.