1. A method of completion processing for data communications instructions in a distributed computing environment, the distributed computing environment including a plurality of computers coupled for data communications through communications adapters and an active messaging interface (‘AMI’), the method comprising: receiving, in the AMI from an application executing on a computer in the distributed computing environment, a sequence of data communications instructions, each instruction specifying a transfer of payload data among computers in the distributed computing environment, at least one of the instructions specifying a callback function; injecting, by the AMI for each data communications instruction into a slot in an injection FIFO buffer of a data communication adapter, an injection descriptor specifying to the communications adapter the transfer of payload data, the slot in the injection FIFO buffer having a corresponding slot in a pending callback list; listing, by the AMI in the corresponding slot in the pending callback list for each data communications instruction, any callback function specified by that instruction, incrementing a pending callback counter for each listed callback function; transferring payload data by the communications adapter in accordance with each injection descriptor in the injection FIFO buffer, incrementing a transfer counter upon completion of each transfer; determining from counter values whether the pending callback list presently includes callback functions for which transfers of payload data have been completed; and calling by the AMI any callback functions in the pending callback list for which transfers of payload data have been completed, decrementing the pending callback counter for each callback function called.