2882 }
2883
2884 for (i = 0; i < iSet; i++) {
2885 if (0 != (err = pthread_join(setPool[i], ((void *)0)))) {
2886 fprintf(stderr, "pthread join error: %d\n", err);
2887 exit(-1);
2888 }
2889 }
2890
2891 for (i = 0; i < iCheck; i++) {
2892 if (0 != (err = pthread_join(checkPool[i], ((void *)0)))) {
2893 fprintf(stderr, "pthread join error: %d\n", err);
2894 exit(-1);
2895 }
2896 }
2897
2898 return 0;
2899}
2900
2901void *setThread(void *param) {
2902 a = 1;
2903 b = -1;
2904
2905 return ((void *)0);
2906}
2907
2908void *checkThread(void *param) {
2909 if (! ((a == 0 && b == 0) || (a == 1 && b == -1))) {
2910 fprintf(stderr, "Bug found!\n");
2911 goto ERROR;
2912 ERROR:
2913 ;
2914 }
2915
2916 return ((void *)0);
2917}