X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f From: Georg Newsgroups: comp.os.msdos.djgpp Subject: Re: Pipe() Date: Sat, 16 Jul 2011 05:12:31 -0700 (PDT) Organization: http://groups.google.com Lines: 57 Message-ID: <9ba183b7-6494-408f-80c9-82fa1fc8493f@34g2000yqr.googlegroups.com> References: <639f9631-f9d6-42b8-bf70-f943afe5afa8 AT n28g2000vbs DOT googlegroups DOT com> <9b97a0e5-b352-406d-9504-9947629f7d69 AT s17g2000yqs DOT googlegroups DOT com> <554b20d9-38c3-4a0b-9769-01cf2cc59884 AT w24g2000yqw DOT googlegroups DOT com> <83r55udlym DOT fsf AT gnu DOT org> <2c2cb23a-846a-4c08-9052-ce12066b1d99 AT e8g2000yqi DOT googlegroups DOT com> NNTP-Posting-Host: 92.250.191.164 Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 X-Trace: posting.google.com 1310818459 4712 127.0.0.1 (16 Jul 2011 12:14:19 GMT) X-Complaints-To: groups-abuse AT google DOT com NNTP-Posting-Date: Sat, 16 Jul 2011 12:14:19 +0000 (UTC) Complaints-To: groups-abuse AT google DOT com Injection-Info: 34g2000yqr.googlegroups.com; posting-host=92.250.191.164; posting-account=v5xbdQoAAAAOGc9Ccc-kLZyobvPlN3Qr User-Agent: G2/1.0 X-HTTP-Via: 1.1 TAS-4-4.man-a X-Google-Web-Client: true X-Google-Header-Order: UALSERCVNKH X-HTTP-UserAgent: Mozilla/5.0 (Windows; U; Windows NT 5.1; de; rv:1.9.1.4) Gecko/20091016 Firefox/3.5.4,gzip(gfe) Bytes: 2903 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com I tried the Minix examples Rugxulo mentioned in the other thread by converting the makefiles to DOS. I observed that a sleep() statement in a thread causes a hang with gthreads. GNU pth 2.07 did continue to work. Since the Wikipedia example for pthread is the most simple I am aware of I inserted the sleep() statement there: #include #include #include #include #define NUM_THREADS 5 void *TaskCode(void *argument) { int tid; tid = *((int *) argument); sleep(3); /*this is for testing sleep() in a thread */ printf("Hello World! It's me, thread %d!\n", tid); return NULL; } int main (int argc, char *argv[]) { pthread_t threads[NUM_THREADS]; int thread_args[NUM_THREADS]; int rc, i; /* create all threads */ for (i=0; i