커다란 파일이 있습니다. 여러 개의 I/O 함수를 사용하여 액세스합니다. 가장 일반적인 패키지는 bigmemory
패키지입니다.버퍼가 플러시되었는지 여부를 테스트합니다. R
파일에 쓸 때 출력 버퍼를 비우는 방법을 배웠습니다. 그렇지 않으면 데이터가 저장되었는지 여부에 따라 모든 베팅이 해제됩니다. 그러나 이것은 매우 긴 대기 시간을 초래할 수 있으며 bigmemory
은 많은 시간을 필요로합니다. 왜 이런 일이 발생하는지 모르겠습니다. 항상 발생하는 것은 아니며 쉽게 재현되지 않습니다.
I/O 버퍼가 R로 플러시되었는지 여부를 확인하는 방법이 있습니까? 특히 bigmemory
일까요? 운영 체제가 중요한 경우 그런 식으로 응답을 제한하십시오.
답변이 bigmemory
이상으로 일반화 될 수 있으면 다른 메모리 매핑 함수 나 I/O 스트림에 의존하기 때문에 그럴 것입니다.
버퍼가 플러시되었는지 여부를 확인하는 좋은 해결책이없는 경우 버퍼가 플러시 된 것으로 간주 할 수있는 경우가 있습니까? 나는. flush()
을 사용하는 것 외에.
업데이트 : 나는 이것이 모두 바이너리 연결임을 분명히해야합니다. @RichieCotton은 isIncomplete()
을 언급했지만 도움말 문서에는 텍스트 연결 만 언급되어 있습니다. 바이너리 연결에 사용할 수 있는지 여부는 분명하지 않습니다.
'bigmemory'와 함께 사용하는 것은 확실하지 않지만, 'isIncomplete'는 일반 연결에서 작동합니다. –
감사! 연결에 대한 매우 제한된 도움말 정보는 isIncomplete가 텍스트 연결의 출력에 적합하다는 것을 언급합니다. 바이너리 연결에 운이 좋았습니까? – Iterator