Re: [PATCH] strtod.3: ATTRIBUTES: Note functions that are thread safe with exceptions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2014-01-22 10:15 +0800, Peng Haitao wrote:
> On 01/21/2014 09:52 PM, Andre Majorel wrote:
> >> These functions can be safely used in multithreaded
> >> applications, as long as setlocale(3) is not simultaneously
> >> called to change the locale.
> > 
> > I find the word "simultaneous" ambiguous when it comes to events
> > whose duration is non-zero.
> > 
> > Is the problem as simple as this ?
> > 1) A thread is interrupted while it's running strto*().
> > 2) The other thread calls setlocale().
> > 3) strto*() resumes with locale data which is now inconsistent
> >    or invalid.
> > 
> > If that is the case, how about :
> > 
> >   These functions can be safely used in multithreaded
> >   applications, as long as the locale is not changed during
> >   their execution.
> 
> The above sentence is OK, but I think added setlocale(3) is
> better, thanks.
> 
> These functions can be safely used in multithreaded
> applications, as long as setlocale(3) is not called
> to change the locale during their execution.

This wording can be interpreted to mean that calling setlocale()
*is* permitted as long as the locale doesn't change. If that is
really what you mean, then no further objections from me.
Otherwise, my recommendation would be

  These functions can be safely used in multithreaded
  applications, as long as setlocale() is not called during
  their execution.

-- 
André Majorel http://www.teaser.fr/~amajorel/
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Kernel Documentation]     [Netdev]     [Linux Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux