Consider the following concurrent tasks, in which each assignment statement executes atomically. Within a task, the statements occur in order. Initially, the shared variables x and y are set to 0.
Task 1 Task 2
x = 1 y = 1
a = y b = x
At the end of the concurrent tasks, the values ofa andb are examined. Which of the following must be true?
I. ( a == 0 ) ( b == 1 )
II. ( b == 0 ) ( a == 1 )
III. ( a == 1 ) ( b == 1 )
(A) I only
(B) II only
(C) III only
(D) I and II only
(E) I, II, and III