From: | "Magnus Hagander" <mha(at)sollentuna(dot)net> |
---|---|
To: | "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | "Martijn van Oosterhout" <kleptog(at)svana(dot)org>, <mark(at)mark(dot)mielke(dot)cc>, "Qingqing Zhou" <zhouqq(at)cs(dot)toronto(dot)edu>, <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Stats collection on Windows |
Date: | 2006-04-05 14:07:43 |
Message-ID: | 6BCB9D8A16AC4241919521715F4D8BCEA35251@algol.sollentuna.se |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
> >> HANDLE is process local? That is worse then, because then
> there's no
> >> guarentee that each process will see a different identifier.
>
> > HANDLE is process local. What you need to do is run
> DuplicateHandle()
> > on it specifying it should "also be valid for process Y" (for which
> > you need a HANDLE opened, in this case the stats
> collector). This will
> > give you a new handle whichi s valid in the *target
> process*, but it
> > is *not* valid in your own process.
>
> What happens if process Y goes away between the time you
> obtain a handle for it and the time you try to run this
> DuplicateHandle call?
I don't know offhand. I would assume one of two things:
1) DuplicateHandle() fails.
2) You get a handle back that is valid in the dead process (meaning it's
not valid).
I can put together some quick test-code for this if you need me to?
//Magnus
From | Date | Subject | |
---|---|---|---|
Next Message | stephen joseph butler | 2006-04-05 14:13:14 | Re: Stats collection on Windows |
Previous Message | Andrew Dunstan | 2006-04-05 14:07:11 | Re: Tru64/Alpha problems |