第九节 异步I/O所认可的扩展  BACKWARD FORWARD


本节定义了一个从HPF或Fortran程序中执行异步I/O的机制。这些被描述为对Fortran 90标准的改变。

对于9.2.1节的第二段,在“and”之前增加了“一个所允许的传送方法的依赖于处理器的集合,”。

对于9.3.4节,规则R905,增加了

  H901 connect-spec   is ASYNCH=scalar-default-char-expr

在9.3.4.10节之后,增加了新的一节,标题为“OPEN语句中的ASYNCH=指示符”,包括下列段落:

scalar-default-char-expr将被估算为YES或NO。YES指明允许异步数据传送语句建立这一连接。NO指明不允许异步数据传送语句建立这一连接。所指示的值将放在文件所允许的传送方法的集合中。如果忽略这个指示符,缺省值为NO。

对于9.4.1节,规则R912,增加了

  H902 io-control-spec is ID=scalar-default-int-variable

对于9.4.1节,规则R912增加了约束:

约束:如果存在ID=指示符,则将出现REC=指示符,同时format和namelist-group-name将不会出现。

约束:如果存在ID=指示符,则数据传送语句中的任意表达式都不能出现函数引用。

在9.4.1节的结尾,增加了下列三段:

增加ID=指示符导致异步数据传送的初始化。除非数据传送语句中出现IOSTAT=指示符且所指定的变量被定义成非零值,或者出现ERR=指示符且在数据传送语句上检测一个错误条件,在这种条件下可以允许不出现WAIT语句;否则数据传送语句必须最终紧接一条WAIT语句,该语句指定了数据传送语句中ID变量所返回的同一ID值。这一WAIT语句被称为匹配的WAIT语句。注意,异步数据传送必须是直接的和非格式化的。对于用ASYNCH=值为NO的指示符所打开的单元,不能指定ID=指示符。

在9.4.1节中,约束后面的第四和第五段将所有"IOSTAT=或一个SIZE="都改为"IOSTAT=,SIZE=或一个ID="。

在最后一段之前的9.4.3节的末尾插入了下列正文:

将9.4.3的最后一段更改为下列形式:

在9.4.4节中,将操作8更改为下列形式:

对于9.4.4节,增加了下列三段:

对用户的建议:注意,我们仍然允许READ上I/O列表的从左到右的定义。这意味着语句

是合法的且与异步READ具有相同的语义。(对用户的建议结束)

在第九节中,将“和INQUUIRE语句”改为“,INQUIRE,和WAIT语句”。在9.6.1节中,规则R924增加了

H903 inquire-spec is ASYNCH = scalar-default-char-variable


Copyright: NPACT BACKWARD FORWARD