gecko-dev/ipc/mscom
Aaron Klotz b1a47abb5e Bug 1570701: Part 2 - Add asynchronous CreateInstance method to mscom::EnsureMTA; r=Jamie
We'd like to offer a way for developers to safely do asynchronous instantiations
of COM objects. This patch adds a static CreateInstance method to mscom::EnsureMTA
that facilitates this under certain conditions (as outlined in the comments).

To help ensure that this is as safe as possible, we return a MozPromise that,
once resolved, produces an AgileReference that may then be passed between
threads, and may then be resolved when a specific thread needs to access the
interface.

Differential Revision: https://phabricator.services.mozilla.com/D44519

--HG--
extra : moz-landing-system : lando
2019-09-04 15:36:42 +00:00
..
mozglue Bug 1553363 - Generalize the *_impl goop for allocation functions in mozglue. r=froydnj 2019-05-29 22:49:42 +00:00
oop
ActivationContext.cpp
ActivationContext.h
Aggregation.h
AgileReference.cpp Bug 1576925: Make AgileReference copyable; r=Jamie 2019-08-28 15:05:32 +00:00
AgileReference.h Bug 1576925: Make AgileReference copyable; r=Jamie 2019-08-28 15:05:32 +00:00
ApartmentRegion.h
AsyncInvoker.h
COMPtrHolder.h
DispatchForwarder.cpp
DispatchForwarder.h Bug 1547143 - Format the tree: Be prescriptive with the pointer style (left) r=Ehsan 2019-05-01 08:47:10 +00:00
EnsureMTA.cpp Bug 1570701: Part 2 - Add asynchronous CreateInstance method to mscom::EnsureMTA; r=Jamie 2019-09-04 15:36:42 +00:00
EnsureMTA.h Bug 1570701: Part 2 - Add asynchronous CreateInstance method to mscom::EnsureMTA; r=Jamie 2019-09-04 15:36:42 +00:00
FastMarshaler.cpp
FastMarshaler.h
IHandlerProvider.h
Interceptor.cpp
Interceptor.h
InterceptorLog.cpp
InterceptorLog.h
MainThreadHandoff.cpp
MainThreadHandoff.h
MainThreadInvoker.cpp
MainThreadInvoker.h
moz.build
Objref.cpp
Objref.h
PassthruProxy.cpp
PassthruProxy.h
ProcessRuntime.cpp Bug 1574298: Convert mscom::ProcessRuntime to use ProcessCategory enum and matching constructor; r=Jamie 2019-08-16 16:06:45 +00:00
ProcessRuntime.h Bug 1574298: Convert mscom::ProcessRuntime to use ProcessCategory enum and matching constructor; r=Jamie 2019-08-16 16:06:45 +00:00
ProxyStream.cpp
ProxyStream.h
Ptr.h
Registration.cpp Bug 1536642: Ensure that mscom::RegisteredProxy move assignment correctly releases its references; r=Jamie 2019-03-20 00:29:27 +00:00
Registration.h Bug 1536642: Ensure that mscom::RegisteredProxy move assignment correctly releases its references; r=Jamie 2019-03-20 00:29:27 +00:00
RegistrationAnnotator.cpp
RegistrationAnnotator.h
SpinEvent.cpp
SpinEvent.h
StructStream.cpp
StructStream.h
Utils.cpp Bug 1570701: Part 1 - Add IsClassThreadAwareInprocServer utility function to MSCOM; r=Jamie 2019-09-03 23:58:39 +00:00
Utils.h Bug 1570701: Part 1 - Add IsClassThreadAwareInprocServer utility function to MSCOM; r=Jamie 2019-09-03 23:58:39 +00:00
VTableBuilder.c
VTableBuilder.h
WeakRef.cpp
WeakRef.h