| From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
|---|---|
| To: | "Magnus Hagander" <mha(at)sollentuna(dot)net> |
| Cc: | "PgSql-Win32" <pgsql-hackers-win32(at)postgresql(dot)org> |
| Subject: | Re: Win32 question: getppid() with no parent? |
| Date: | 2004-05-27 18:30:28 |
| Message-ID: | 17608.1085682628@sss.pgh.pa.us |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-hackers-win32 |
"Magnus Hagander" <mha(at)sollentuna(dot)net> writes:
>>> (If we can't rely on that variable, we could do a win32 specific hack
>>> that passes the HANDLE of the postmaster down to the child on exec, I
>>> guess.)
>>
>> Is this just like passing a variable value, or is there some more
>> protection involved?
> It is passing a variable. *Before* you parse it, you have to make it
> inheritable by doing something along the line of:
> DuplicateHandle(GetCurrentProcess(), GetCurrentProcess(),
> GetCurrentProcess(), &targetHandle, 0, TRUE, DUPLICATE_SAME_ACCESS);
But you'd do that only once during postmaster start, right? It's
probably marginally faster/safer to do that than to fabricate a new
handle in each child based on PostmasterPid.
regards, tom lane
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Magnus Hagander | 2004-05-27 18:32:28 | Re: Win32 question: getppid() with no parent? |
| Previous Message | Magnus Hagander | 2004-05-27 18:29:17 | Re: Primary Key results in endless loop |