introduce TDF_compare_debug, omit OBJ_TYPE_REF casts with it
[official-gcc.git] / libgo / misc / cgo / test / cthread_unix.c
blob247d636d06dc5d45e9c3c0986f499df1ab56b1af
1 // Copyright 2013 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
5 // +build aix darwin dragonfly freebsd linux netbsd openbsd solaris
7 #include <pthread.h>
8 #include "_cgo_export.h"
10 static void*
11 addThread(void *p)
13 int i, max;
15 max = *(int*)p;
16 for(i=0; i<max; i++)
17 Add(i);
18 return 0;
21 void
22 doAdd(int max, int nthread)
24 enum { MaxThread = 20 };
25 int i;
26 pthread_t thread_id[MaxThread];
28 if(nthread > MaxThread)
29 nthread = MaxThread;
30 for(i=0; i<nthread; i++)
31 pthread_create(&thread_id[i], 0, addThread, &max);
32 for(i=0; i<nthread; i++)
33 pthread_join(thread_id[i], 0);