关于fortran里的一个“错误”的如何解决问题
这个是用的mpich进行的fortran并行计算,我单核计算完全没问题,但是并行后就出现这种问题了,这是什么问题呀,怎么解决?...
这个是用的mpich进行的fortran并行计算,我单核计算完全没问题,但是并行后就出现这种问题了,这是什么问题呀,怎么解决?
展开
1个回答
展开全部
根据上面的提示显示你要写入的文件Te1.txt的文件属性是只读的
要是linux系统的话在放Te1.txt的目录下用饥含chmod a+w Te1.txt
要是windows的话用手动操作就是右键 〉文件属性〉把只读前返肢铅面的钩钩给去掉
要是用cmd的漏好话如果我没记错的话,用attrib -a Te1.txt/s /d
前面那个部分看不到,只能帮你到这了
要是linux系统的话在放Te1.txt的目录下用饥含chmod a+w Te1.txt
要是windows的话用手动操作就是右键 〉文件属性〉把只读前返肢铅面的钩钩给去掉
要是用cmd的漏好话如果我没记错的话,用attrib -a Te1.txt/s /d
前面那个部分看不到,只能帮你到这了
追问
Te1是程序自动生成的,不是只读文件,我用单线程运行没问题,但是用的四线程并行运算才出现这种问题。
追答
如果是这种情况,那么很大的可能是由于多线程运行的时候对Te1.txt的文件的写入的部分还没完成,并行程序就开始调用这个文件了,这样的情况下Te1.txt因为已经被打开,所以是只读文件。你只能调整并行的逻辑顺序或者增加判断来避免这种情况了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询