我必須做一個程序(用於Linux),其中有一個非常大的索引文件,我必須從文件中搜索和解釋數據。現在的問題是,我只允許隨時緩存文件的x字節(由參數決定),所以如果不是我想要的,我必須從緩存中刪除某些數據。C將文件的一部分讀入緩存中
如果我的理解是正確的,的fopen(R)不會放任何東西在緩存中,只有當我打電話GETC或FREAD(指定尺寸)是否得到緩存。
所以我的問題是,可以說我用的fread和讀取100個字節,但檢查之後,只有100個字節的20包含了我所需要的數據;我如何從緩存中刪除無用的80字節(或覆蓋它)以便從文件中讀取更多內容。
EDIT通過緩存我的意思是存儲在存儲器中的數據,這使問題更容易
我懷疑你有些困惑。你能詳細說明這種情況下「緩存」的意思嗎?你是指O/S緩存還是其他的東西? –