| 1234567891011121314151617181920212223242526272829303132333435363738394041 | #include <pthread.h>#include <stdio.h>#include <unistd.h>void* runner(void*);int res = 0;#ifdef __CLASSIC_C__int main(){  int ac;  char* av[];#elseint main(int ac, char* av[]){#endif  pthread_t tid[2];  pthread_create(&tid[0], 0, runner, (void*)1);  pthread_create(&tid[1], 0, runner, (void*)2);#if defined(__BEOS__) && !defined(__ZETA__) /* (no usleep on BeOS 5.) */  usleep(1); /* for strange behavior on single-processor sun */#endif  pthread_join(tid[0], 0);  pthread_join(tid[1], 0);  if (ac > 1000) {    return *av[0];  }  return res;}void* runner(void* args){  int cc;  for (cc = 0; cc < 10; cc++) {    printf("%p CC: %d\n", args, cc);  }  res++;  return 0;}
 |