> > I went back-forth on if it makes sense to provide the name as an
> > extra argument and decided it provides more flexibility. For example
> > I can use the same init callback and arguments for different segments.
>
> If the initialization callback function needed the name, it could be
> provided via the "void *" callback argument, right?  I'm not following why
> we need to provide it separately.

While it's true it can be passed as extra data, it is less error-prone
as we guarantee the real name of the segment is made available to
the callback. Also a caller to GetNamedDSMSegment does not need to
pass the name twice, as the name and as extra data. The most common
case I would think is using the segment name as the tranche name when
initializing a lwlock.

--
Sami Imseih
Amazon Web Services (AWS)


Reply via email to