This is example 2.33 from "MPI: The Complete Reference, vol. 1", 2nd
ed, pp. 109-110, "Starvation-free producer-consumer code".  It is the
5th and final version of the multiple-producer, single-consumer system
of example 2.18.  Like the third version, example 2.26, this uses an
MPI_Waitany at each loop iteration to select and process one completed
receive request.  However, unlike that version, starvation is
prevented by a judicious use of MPI_REQUEST_NULL.


