我们可以自定义Julia中的文件打开缓冲区大小吗
我们可以自定义Julia中的文件打开缓冲区大小吗,julia,buffer,Julia,Buffer,open() 是否可以更改该值(未来openkwargs?)或使其适应磁盘块大小(通常在GPFS中非常大等)?据我所知,目前无法从Julia更改此值(除非在Julia中重新实现ios.c:_buf\u realloc)。通过PR将此功能添加到Julia将非常容易。例如,将类似以下内容添加到src/support/ios.c: intios\u growbuf(ios\u t*s,size\u t sz) { 返回_buf_realloc(s,sz)=NULL; } 然后在base/iostre
open()
是否可以更改该值(未来open
kwargs?)或使其适应磁盘块大小(通常在GPFS中非常大等)?据我所知,目前无法从Julia更改此值(除非在Julia中重新实现ios.c:_buf\u realloc
)。通过PR将此功能添加到Julia将非常容易。例如,将类似以下内容添加到src/support/ios.c
:
intios\u growbuf(ios\u t*s,size\u t sz)
{
返回_buf_realloc(s,sz)=NULL;
}
然后在base/iostream.jl
中执行如下操作:
function sizehint!(s::IOStream, sz::Integer)
ccall(:ios_growbuf, Cint, (Ptr{Cvoid}, Csize_t), s.ios, sz) != 0 &&
throw(OutOfMemoryError())
end
你考虑过使用mmap吗?谢谢。。。这正是我所担心的