2014-08-29 3 views
0

C++ 코드의 파일 캐싱을 비활성화하는 방법이 있는지 궁금합니다. 디스크에서 특정 파일 형식을 읽고 쓰고 수정하는 데 몇 가지 테스트를 실행하고 있으며 캐싱 때문에 타이밍 테스트가 가장 비뚤어졌습니다. 모든 컴파일러 지시문이나 OS 관련 명령을 사용하여 캐싱을 해제하는 빠른 방법이 있는지 궁금합니다.C++ 코드의 파일 캐싱 비활성화

내 테스트는 현재 gmake를 사용하여 linux, mac 및 windows에서 빌드됩니다. 모든 제안/의견을 환영합니다.

감사합니다.

답변

1

POSIX 호환 OS에서 fsync이 당신이 원하는 것일 수 있습니다. 파일을 읽기 전에 수정 한 후에 호출하십시오. 아마도 프로그램이 많이 느려지 게 될 것입니다.

+0

답장을 보내 주셔서 감사합니다. 이 작업을 수행하는 플랫폼 독립적 인 방법 또는 Windows 관련 메서드가 있습니까? – SkypeMeSM

+0

윈도우 API에 상응하는 기능이있을 가능성이 매우 높습니다. 나는 크로스 플랫폼 래퍼를 모른다. 그러나 일단 당신이 적절한 기능을 알아 내면 자신을 쓰는 일은 너무 어려워서는 안된다. – user2079303