Re: Lifetime management of InProc server inside an OutProc server
Stuart Redmann <DerTopper@web.de> wrote:
Well, one could argue that the COM specification offers no means to
prevent the hosting process from terminating (at the time COM was
designed no-one seemed to anticipate such a case), but we could do it
by letting the InProc server launch a dummy thread per attached
process whose sole purpose is to keep the host process alive.
I don't see how that would help. Normally, when a process decides to =
terminate, it will simply allow WinMain to return, at which point CRT =
calls ExitProcess. This will terminate all threads still running.
Further, before exiting, WinMain will likely call CoUninitialize, so =
even if by some miracle the process is not terminated and the DLL server =
survives, it will find it difficult to do any COM work.
Further still, in-proc servers often rely on their host process to run a =
message pump for them. If the process decides to terminate, it'll likely =
exist its message pump first thing.
--
With best wishes,
Igor Tandetnik
With sufficient thrust, pigs fly just fine. However, this is not =
necessarily a good idea. It is hard to be sure where they are going to =
land, and it could be dangerous sitting under them as they fly overhead. =
-- RFC 1925