CoCreateFreeThreadedMarshaler(3w)

CoCreateFreeThreadedMarshaler3w

Usage

HRESULT CoCreateFreeThreadedMarshaler
(
LPUNKNOWN punkOuter,
LPUNKNOWN* ppunkMarshal
)

Overview

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

Declared in "objbase.h".

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

Debug channel "ole".

Releases

4 releases since Debian 4.0 (Etch); the text changed 3 times.

  1. 4.0
  2. 5.0
  3. 6.0
  4. 7

From libwine-dev 1.4.1-4 in Debian 7 (Wheezy). Parsed by carta from the page's man source.