CoCreateFreeThreadedMarshaler (OLE32.@)
HRESULT CoCreateFreeThreadedMarshaler ( LPUNKNOWN punkOuter, LPUNKNOWN* ppunkMarshal )
Creates a free-threaded marshaler.
punkOuter | [In] | Optional. Outer unknown. |
ppunkMarshal | [Out] | On return, the inner unknown of the created free-threaded marshaler. |
Success: S_OK
Failure: E_OUTOFMEMORY if no memory available to create object.
Objects that ensure their state is maintained consistent when used by multiple threads and reference no single-threaded objects are known as free-threaded. The free-threaded marshaler enables these objects to be efficiently marshaled within the same process, by not creating proxies (as they aren't needed for the object to be safely used), whilst still allowing the object to be used in inter-process and inter-machine contexts.
Defined in "objbase.h".
Implemented in "dlls/ole32/ftmarshal.c". source.winehq.org/source/dlls/ole32/ftmarshal.c
Debug channel "ole".
Copyright © 2008 The Wine Project. All trademarks are the property of their respective owners. Visit WineHQ for license details. Generated Nov 2008.