The latest version of this topic can be found at async_uuid.
Specifies the UUID that directs the MIDL compiler to define both synchronous and asynchronous versions of a COM interface.
Syntax
  
      [async_uuid (  
   uuid  
)]  
Parameters
uuid
A UUID that identifies the version of the interface.
Remarks
The async_uuid C++ attribute has the same functionality as the async_uuid MIDL attribute.
Example
// cpp_attr_ref_async_uuid.cpp  
// compile with: /LD  
#include <Windows.h>  
[module(name="Test")];  
[object, uuid("9e66a290-4365-11d2-a997-00c04fa37ddb"),   
async_uuid("e8583106-38fd-487e-912e-4fc8645c677e")]  
__interface ICustom {  
   HRESULT Custom([in] long l, [out, retval] long *pLong);  
};  
Requirements
Attribute Context
| Applies to | interface | 
| Repeatable | No | 
| Required attributes | None | 
| Invalid attributes | dual, dispinterface | 
For more information about the attribute contexts, see Attribute Contexts.