Heikki Linnakangas <heikki.linnakan...@enterprisedb.com> writes: > It just occurred to me that the Windows latch implementation goes > through a lot of trouble to dynamically assign the shared Windows event > handles to the latches in OwnLatch, but there's really no reason why > they can't be statically assigned in InitSharedLatch instead. We have to > allocate the same amount of event handles anyway.
> That makes the implementation a lot simpler, eliminating the shared > memory block dedicated to latches altogether, and all the related > bookkeeping. We no longer need NumSharedLatches() function anymore > either, each InitSharedLatch call can allocate a new event handle directly. That sounds real good. The only possible downside I can see is this: > + * InitSharedLatch needs to be called in postmaster before forking child > + * processes, usually right after allocating the shared memory block > + * containing the latch with ShmemInitStruct. The Unix implementation > + * doesn't actually require that, but the Windows one does. But realistically I think we have to insist on InitSharedLatch being done during shared memory setup anyway, else there will be race condition issues. So no objection here. regards, tom lane -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers