(j3.2006) DO CONCURRENT, asynchronous, nonadvancing, direct access
Van Snyder
Van.Snyder
Thu Dec 3 15:40:35 EST 2015
15-007r2:8.1.6.5p5 says that if records are written to a file connected
for sequential access during more than one iteration of a DO CONCURRENT
construct, the ordering between records is processor dependent.
It is silent concerning direct access, nonadvancing output, and
asynchronous output.
9.6.2.5 says that asynchronous data transfers are read, written, and
processed in the same order as they would have been if the data transfer
statements were synchronous. So the relationship between DO CONCURRENT
and asynchronous is covered, at least concerning advancing sequential
output.
If a unit is connected for direct access and several different records
are written asynchronously, the "same order ... synchronous" gives a
definition for the NEXTREC= variable in an INQUIRE statement. But what
happens if different records are written in different iterations of a DO
CONCURRENT construct? The "same order ... synchronous" doesn't offer
any help here.
If a unit is connected for stream access, and data are written written
to it in different iterations of a DO CONCURRENT construct, what happens
to the POS= specifier in an INQUIRE statement?
What happens if data are written to the same unit using nonadvancing
output, in different iterations of a DO CONCURRENT construct?
More information about the J3
mailing list