9.1 WAIT语句 BACKWARD FORWARD


H904 WAIT statement is WAIT (wait-spec-list)
H905  wait-spec   is ID = scalar-default-int-expr
            or ERR = label
            or IOSTAT= label
            or DONE=scalar-default-logical-variable 

约束:wait-spec-list将包含正好一个ID=指示符以及至多一个其它的指示符。

如果ERR=和IOSTAT=指示符出现在匹配的异步数据传送语句中,则仅允许它们出现。

WAIT语句终止一个异步数据传送。9.4.1.4,9.4.1.5和9.4.1.6节分别描述了IOSTAT=,和ERR=指示符。

DONE=指示符是可选的。如果出现的话,则如果异步操作完成,scalar-default-logical-variable被置为.TRUE.,否则被置为.FALSE.。

WAIT语句导致处理器等待,直到匹配的数据传送语句正常或错误的终止。当匹配的WAIT语句执行后,错误条件,控制传送,数据传送,以及IOSTAT=变量的值就好象数据传送语句是用同步执行代替匹配的WAIT语句,且将任意IOSTAT=和ERR=指示符加到数据传送语句的io-control-spec-list中。

如果出现DONE指示符,且返回值为.FALSE.,则必须执行一个或更多的匹配的WAIT语句,直到DONE=指示符不再出现或返回值为.TRUE.。

对实现者的建议:实现者可有选择地将任意或所有的异步I/O同步实现。这实质意味着在数据传送语句上使用ID=子句来存储传送结果,然后将结果提供给匹配的WAIT语句。(对实现者的建议结束)


Copyright: NPACT BACKWARD FORWARD