Re: fork()-safety, thread-safety

From: Nico Williams <nico(at)cryptonector(dot)com>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: fork()-safety, thread-safety
Date: 2017-10-05 22:39:51
Message-ID: 20171005223950.GB1251@localhost
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Thu, Oct 05, 2017 at 03:34:41PM -0700, Andres Freund wrote:
> On 2017-10-05 17:31:07 -0500, Nico Williams wrote:
> > > > vfork() is widely demonized, but it's actually quite superior
> > > > (performance-wise) to fork() when all you want to do is exec-or-exit
> > > > since no page copying (COW or otherwise) needs be done when using
> > > > vfork().
> > >
> > > Not on linux, at least not as of a year or two back.
> >
> > glibc has it. Other Linux C libraries might also; I've not checked them
> > all.
>
> It has it, but it's not more efficient.

Because of signal-blocking issues?

> > > I do think it'd be good to move more towards threads, but not at all for
> > > the reasons mentioned here.
> >
> > You don't think eliminating a large difference between handling of WIN32
> > vs. POSIX is a good reason?
>
> I seems like you'd not really get a much reduced set of differences,
> just a *different* set of differences. After investing time.

Fair enough.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2017-10-05 22:49:22 Re: fork()-safety, thread-safety
Previous Message Andres Freund 2017-10-05 22:34:41 Re: fork()-safety, thread-safety