ASYNCHRONOUS COMPLETION TOKEN An Object Behavioral Pattern for Efficient Asynchronous Event Handling Timothy H. Harrison, Irfan Pyarali, and Douglas C. Schmidt harrison@cs.wustl.edu irfan@wuerl.wustl.edu schmidt@cs.wustl.edu Department of Computer Science Washington University Campus Box 1045 One Brookings Drive St. Louis, Missouri 63130-4899 (TEL): (314) 935-7538 ABSTRACT Contemporary applications must respond to many types of events ranging from user interface notifications to network messages. Delay-sensitive applications, such as network management systems for high-speed networks, often perform long-running operations asynchronously to avoid blocking the processing of other pending events. When these asynchronous operations complete, applications may need more information than is provided with the notification to properly handle the event. This paper describes the Asynchronous Completion Token pattern, which allows applications to efficiently associate state with the completion of asynchronous operations.