/*
 *  vim: ts=4 sw=4 expandtab
 */

#include <stdio.h>
#include <pthread.h>
#include <limits.h>
#include <unistd.h>

void *sleepy(void *dummy)
{
    printf("started\n");
    sleep(1000);
}

int main(int argc, char **argv)
{
    int i;
    printf("PTHREAD_THREADS_MAX: %d\n", PTHREAD_THREADS_MAX);
    for( i=0; i<PTHREAD_THREADS_MAX; i++)
    {
        pthread_t thread;
        int status;
        if( status = pthread_create(&thread, NULL, sleepy, NULL) ) {
            printf("Thread creation failed at %d with status %d\n", i, status);
            sleep(10);
            return 1;
        }
        pthread_detach(thread);
    }
    printf("PTHREAD_THREADS_MAX reached\n");
    return 0;
}

