Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/benchmark/create_pthrd.c

    reb2fe4f r5013c62  
    1414                n = atoi(argv[1]);
    1515        }
    16         printf("create %lu pthreads ... ", n);
     16        printf("%lu\n", n);
    1717
    1818        for (size_t i = 0; i < n; i++) {
    19                 pthread_t thread;
    20                 if (pthread_create(&thread, NULL, foo, NULL) < 0) {
    21                         perror( "failure" );
     19                pthread_attr_t attr;
     20                if (pthread_attr_init(&attr) < 0) {
    2221                        return 1;
    2322                }
    24 
    25                 if (pthread_join( thread, NULL) < 0) {
    26                         perror( "failure" );
     23                if (pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED) < 0) {
     24                        return 1;
     25                }
     26                pthread_t thread;
     27                if (pthread_create(&thread, &attr, foo, NULL) < 0) {
    2728                        return 1;
    2829                }
    2930        }
    30         printf("finish\n");
     31        pthread_exit(NULL);
     32        return 0;
    3133}
Note: See TracChangeset for help on using the changeset viewer.