共享
如果应用程序仅包含 C 和 C++ 模块,那么共享文件的首选方法是在一个程序中打开文件并将文件指针传递到其他程序。 这样就不需要多次打开文件。
在同一作业中共享文件允许该作业中的程序共享该文件的状态,记录位置和缓冲区。 要允许在同一作业中运行的两个或多个程序之间共享开放数据路径 (ODP) ,请在创建,更改或覆盖文件的命令上使用 SHARE (*YES) 参数。 开放式数据路径 是执行文件的所有 I/O 操作所通过的路径。
您可以一次共享已处理记录的流的打开数据路径。 您还可以共享记录文件的打开数据路径。 不应为一次处理一个字符的流共享打开的数据路径,因为执行 I/O 操作时可能会出现不可预测的结果。
如果要在 C/C++ 程序和以其他语言编写的程序之间共享文件,那么可以通过共享开放式数据路径来执行此操作。
共享文件的首次打开确定文件的打开方式 (例如,是否为 INPUT , OUTPUT , UPDATE 和 DELETE 打开)。 如果后续打开指定了未由第一次打开指定的打开方式,那么将第二次打开文件,但将忽略打开方式。 例如,如果第一次打开指定了打开方式 IO ,第二次打开指定了 IOUD,那么将以 IO方式第二次打开文件。