goProgram 是一个简单的实用程序,它在文件中搜索给定的字符串并得出 true/false
尝试使用 data.log 时,第一次大约需要 160 毫秒,后来大约需要 20 毫秒
I:\Study\GO> .\goProgram.exe I:\data.log "BUILD SUCCESS"
true
Execution time : 156.4336ms
I:\Study\GO> .\goProgram.exe I:\data.log "BUILD SUCCESS"
true
Execution time : 19.1512ms
I:\Study\GO> .\goProgram.exe I:\data.log "BUILD SUCCESS"
true
Execution time : 19.5516ms
I:\Study\GO> .\goProgram.exe I:\data.log "BUILD SUCCESS"
true
Execution time : 18.5528ms
尝试使用 data1.log 时,第一次大约需要 180 毫秒,后来大约需要 20 毫秒
I:\Study\GO> .\goProgram.exe I:\data1.log "BUILD SUCCESS"
true
Execution time : 178.5104ms
I:\Study\GO> .\goProgram.exe I:\data1.log "BUILD SUCCESS"
true
Execution time : 17.5497ms
I:\Study\GO> .\goProgram.exe I:\data1.log "BUILD SUCCESS"
true
Execution time : 21.0613ms
data.log 和 data1.log 约为 24MB。
它是否构建某种缓存?或者它对加载的文件进行一些索引?
操作系统将从磁盘读取的数据缓存在内存中一段时间,这样重复访问相同的数据会更快。这与使用的特定程序或编程语言无关。