delorie.com/archives/browse.cgi | search |
Mailing-List: | contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm |
List-Subscribe: | <mailto:cygwin-subscribe AT sources DOT redhat DOT com> |
List-Archive: | <http://sources.redhat.com/ml/cygwin/> |
List-Post: | <mailto:cygwin AT sources DOT redhat DOT com> |
List-Help: | <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs> |
Sender: | cygwin-owner AT sources DOT redhat DOT com |
Delivered-To: | mailing list cygwin AT sources DOT redhat DOT com |
Message-ID: | <024401c16d49$0f7f0f70$0200a8c0@lifelesswks> |
From: | "Robert Collins" <robert DOT collins AT itdomain DOT com DOT au> |
To: | "Lassi A. Tuura" <lassi DOT tuura AT cern DOT ch>, |
"Evan Pollan" <evan_pollan AT yahoo DOT com> | |
Cc: | <cygwin AT cygwin DOT com> |
References: | <20011114141805 DOT 42346 DOT qmail AT web21009 DOT mail DOT yahoo DOT com> <3BF28D95 DOT 69190D0D AT cern DOT ch> |
Subject: | Re: pthread_create -- no callback? |
Date: | Thu, 15 Nov 2001 07:15:08 +1100 |
MIME-Version: | 1.0 |
X-Priority: | 3 |
X-MSMail-Priority: | Normal |
X-Mailer: | Microsoft Outlook Express 6.00.2600.0000 |
X-MimeOLE: | Produced By Microsoft MimeOLE V6.00.2600.0000 |
X-OriginalArrivalTime: | 14 Nov 2001 20:20:49.0081 (UTC) FILETIME=[D96B4290:01C16D49] |
----- Original Message ----- From: "Lassi A. Tuura" <lassi DOT tuura AT cern DOT ch> To: "Evan Pollan" <evan_pollan AT yahoo DOT com> Cc: <cygwin AT cygwin DOT com> Sent: Thursday, November 15, 2001 2:28 AM Subject: Re: pthread_create -- no callback? > > The sample I included did check the return value of pthread_join. > > Nope, you are still not printing pthread_join *return* value -- print > the int returned by pthread_join as you did with pthread_create. On > linux it returns ESRCH = no such thread. Your problem is with the > thread argument to pthread_join as shown below. > > Since you are not joining with the thread, the output might disappear. > My guess is that the main thread finishes execution and the stdout gets > closed before the second thread executes, and hence you see no output > from the other thread. That doesn't happen on linux as you can see > below, but maybe it is reasonable behaviour on windows. If you think it > is a bug, I am sure cygwin authors would appreciate a patch ;-) This is indeed the behaviour. The reason is that main() is returning as opposed to calling pthread_exit (rv);. This is a grey area AFAIK in the SUSv2 specification. Patchs accepted as always, probably for gcc in this case. Rob -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Bug reporting: http://cygwin.com/bugs.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |