Path: csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!nuzba.szn.dk!pnx.dk!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Markus Elfring Newsgroups: comp.lang.c,comp.std.c,comp.lang.c++,comp.programming.threads,comp.unix.programmer Subject: Re: Clarification for interface specification "C11 threads.h" Date: Fri, 12 Oct 2012 17:45:31 +0200 Lines: 43 Message-ID: <50783B1B.1050008@web.de> References: <5065EAFD.1050102@loria.fr> <5068B604.9020606@web.de> <5068C9C3.6090502@loria.fr> <50696193.3090503@web.de> <506966CA.6080308@loria.fr> <50696AF9.2000202@web.de> <50697B4C.1090203@loria.fr> <506BFF09.1090804@web.de> <506D747C.3060105@loria.fr> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit X-Trace: individual.net Am+3ZSpxjndDpRLW6VV6gQ3+9Z7mpOO8GTB1zzU9xr7ITnwcsNvY5PIBwkBSskx0sf Cancel-Lock: sha1:kBOxtcBNdLSp2XHNOPYFU/KaIxA= User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:15.0) Gecko/20120825 Thunderbird/15.0 In-Reply-To: <506D747C.3060105@loria.fr> Xref: csiph.com comp.lang.c:27186 comp.std.c:1704 comp.lang.c++:18974 comp.programming.threads:1176 comp.unix.programmer:3545 >> I am curious if you will get feedback by standardisation committee members >> for your descriptions. >> http://p99.gforge.inria.fr/defects-and-improvements/DR-underspecified-thread-functions.html >> >> Did you forward any of them to an "official" communication channel? > > I am not sure what channel that would be, the ISO committees > don't seem to be very open to the outside world. Do you get also any useful information by Derek M. Jones occasionally? ;-) http://www.knosof.co.uk/cbook/ > Generally, if you look at the text for free that you are citing, > and compare it with the text about the threads in C11, you'll notice > a difference in quality. C11 certainly lacked some iterations > of discussion and error correction before it went into the standard. > In particular, a better coordination with the POSIX committee > would have been in order concerning threads. I see also another update candidate if you compare descriptions for the functions "pthread_cond_wait" and "cnd_wait". http://pubs.opengroup.org/onlinepubs/9699919799/functions/pthread_cond_wait.html : "... When using condition variables there is always a Boolean predicate involving shared variables associated with each condition wait that is true if the thread should proceed. Spurious wakeups from the pthread_cond_timedwait() or pthread_cond_wait() functions may occur. Since the return from pthread_cond_timedwait() or pthread_cond_wait() does not imply anything about the value of this predicate, the predicate should be re-evaluated upon such return. ..." How do you think about further clarification for the handling of "predicates" and "spurious wakeups" by the current standard specification for the C programming language? Do you need not to care for them eventually because they are not mentioned in a corresponding draft document? http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1570.pdf Regards, Markus