我正在使用以非常古老的Fortran语言编写的代码。在shared
例程中有一些使用open()
选项的行。 E.g:
OPEN(UNIT=17,STATUS='OLD',FORM='UNFORMATTED',READONLY,SHARED)
编译没问题。在一台机器上运行时,没问题。但后来我转移到另一台机器,它给出了错误:
forrtl: Function not implemented forrtl: severe (30): open failure, unit 17, file
我使用的编译器是两台机器上的英特尔Fortran 14.0.3的Linux版本。删除shared
功能后,一切正常。但是,由于代码不是我自己编写的,我希望尽可能保留它。使用此选项的原因是我可能同时在许多线程上使用代码。他们可能必须同时访问某些文件。
shared
是否安全?