此代码例如打开并尝试复制一个文件1029次
for (int i = 0; i < 1029; ++i) {
MSG_process_create("copy", create_copy, data, MSG_host_self());
}
int create_copy(){
MSG_file_rcopy(file, src, argv[2]);
}
我有例外:
[dave:copy:(1027) 0.034653] simgrid-master/src/xbt/exception.cpp:45: [xbt_exception/CRITICAL] Uncaught exception xbt_ex by copy/1027: Too much files are opened! Some have to be closed.
是否可以更改同时打开的文件的最大数量?或者这个RAM内存的限制?
答案 0 :(得分:2)
确实有1024个文件/主机的硬编码限制,我刚添加了storage / max_file_descriptors标志以允许更改此值( - cfg = storage / max_file_descriptors:2048将其设置为2048)。 提交(c52c503d21e5)在gforge上并且还没有传播到github,这应该很快就会完成。