CoCreateFreeThreadedMarshaler.3w

Langue: en

Version: Jun 2009 (debian - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

NAME

CoCreateFreeThreadedMarshaler (OLE32.@)

SYNOPSIS

HRESULT CoCreateFreeThreadedMarshaler
 (
  LPUNKNOWN  punkOuter,
  LPUNKNOWN* ppunkMarshal
 )

DESCRIPTION

Creates a free-threaded marshaler.

PARAMS

punkOuter [In] Optional. Outer unknown.

ppunkMarshal [Out] On return, the inner unknown of the created free-threaded marshaler.

RETURNS

Success: S_OK

Failure: E_OUTOFMEMORY if no memory available to create object.

NOTES

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.

IMPLEMENTATION

Defined in "objbase.h".

Implemented in "dlls/ole32/ftmarshal.c".

Debug channel "ole".