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