Allows the user to keep Visual Studio responsive during background processing. The interface can be obtained via the SVsCommonMessagePumpFactory service.
public interface IVsCommonMessagePump
The interface provides a common way to keep Visual Studio responsive while doing long time processing on the main thread or waiting for objects (e.g. events, mutexes, semaphores, etc) to signal. Using this interface will not solve all the problems related to reentrancy that are caused by pumping window messages while doing some other processing on the main VS thread. It will allow for the uniform processing of windows messages and the correct handling of things like hotkeys. Using this interface allows troubleshooting mechanisms to detect reentrancy-related issues.
The method's behavior is very similar to ModalWaitForObjects(IntPtr, UInt32, UInt32). In addition, it allows for a custom wait and events processing logic to be supplied. The method makes VS modal, and automatically provides the default wait UI after about 2 seconds of waiting.