我想用APR来映射真正大的文件,大于4Gb。起初我需要创建这么大的文件,但我发现函数apr_file_seek
接受apr_seek_where_t
类型的参数,它只是int的别名。所以有可能只寻求前4场演出。是否可以使用APR处理大型文件?
答案 0 :(得分:1)
您可以使用APR_CUR多次搜索
另请注意,32位系统上的int
允许您向前搜索两个 gibibytes,而不是四个。
另请注意,在32位系统上,mmap
很可能无法映射超过两到三个gibibytes。 (当地址空间受32位限制时,最大地址空间为4个gibibytes,但操作系统必须为其自身保留一些地址空间。)