コード例 #1
0
int main(int argc, char *argv[])
{
    int numthreads = 0;
    int i;
    
    Test_addr16 ();
    numthreads = 30;
    assert(numthreads < MAXTHREADS);
    
    for (i = 0; i < numthreads; i++)
    {
        printf("Creating thread %d\n", i);
        fflush(stdout);
        if (i % 2 == 0)
            CreateOneThread(&threads[i], longfun, 0);
        else
            CreateOneThread(&threads[i], shortfun, 0);
    }
    for (i = 0; i < numthreads; i++)
    {
        BOOL success;
        success = JoinOneThread(threads[i]);
        if (!success)
        {
            fprintf(stdout, "JoinOneThread failed\n");
            fflush (stdout);
        }
    }
    
    
    printf("All threads joined\n");
    fflush (stdout);

    return 0;
}
コード例 #2
0
ファイル: thread.c プロジェクト: dcashman/Coursework
int main(int argc, char *argv[])
{
    int numthreads = 0;
    int i,j;
    
    numthreads = 4;
    

    for (j = 0; j < 100; j++)
    {
        for (i = 0; i < numthreads; i++)
        {
            CreateOneThread(&threads[i], hello, 0);
        }

        for (i = 0; i < numthreads; i++)
        {
            BOOL success;
            success = JoinOneThread (threads[i]);
        }
        printf("All threads joined\n");
    }

    return 0;
}
コード例 #3
0
unsigned long THREAD_POOL::Create(unsigned long numThreads)
{
    unsigned long count;
    for (count = 0; 
        (count < numThreads) && (m_numThreads < MAXTHREADS);
        ++count, ++m_numThreads)
    {
        TLS_ELEMENT * tls = &(m_tls[m_numThreads]);
        tls->Init();
        BOOL created = CreateOneThread(&(tls->m_handle), ThreadRoutine, tls);
        if (!created) {break;}
    }
    return count;
}
コード例 #4
0
ファイル: kthread.c プロジェクト: gungun1010/hidden
int main(int argc, char *argv[])
{
    int numthreads = 5;
    int numreps = 1000;
    int success;
    
    int i,j;
    
    //sscanf(argv[1], "%d", &numthreads);
    printf("Threads: %d * reps: %d\n", numthreads, numreps);
    
    assert(numthreads < MAXTHREADS);
    
    for (j = 0; j < numreps; j++)
    {
        
        for (i = 0; i < numthreads; i++)
        {
            //printf("Creating thread\n");
            //fflush(stdout);
            if (!CreateOneThread(&threads[i], hello, 0))
            {
                fprintf(stdout, "CreateOneThread failed\n");
            }
            fflush(stdout);
        }
        for (i = 0; i < numthreads; i++)
        {
            BOOL success;
            success = JoinOneThread(threads[i]);
            if (!success)
            {
                fprintf(stdout, "JoinOneThread failed\n");
                fflush (stdout);
            }
        }

        printf("Finished rep %d\n", j);
        fflush (stdout);
    }
    
    printf("All threads joined\n");
    fflush (stdout);

    return 0;
}
コード例 #5
0
int main()
{

    for (int i = 0; i < NUM_TH; i++)
        CreateOneThread(&threads[i], compute, (void*) (LOOPS + i));

    while (numThreads != NUM_TH)
    {
        DelayCurrentThread(10);
    }
    printf("All threads started running\n");
    fflush(stdout);

    for (int i = 0; i < NUM_TH; i++)
        JoinOneThread(threads[i]);

    exit(0);
}
コード例 #6
0
ファイル: thread.c プロジェクト: alugupta/resilient-systems
int main(int argc, char *argv[])
{
    int numthreads = 0;
    int i;
    
#if defined(i386)
    asm("pusha;popa");
#endif    

    numthreads = 4;
    
    for (i = 0; i < numthreads; i++)
    {
        printf("Creating thread\n");
        fflush(stdout);
        CreateOneThread(&threads[i], hello, 0);
        fflush(stdout);
    }

    for (i = 0; i < numthreads; i++)
    {
        BOOL success;
        success = JoinOneThread (threads[i]);
        if (!success)
        {
            fprintf(stdout, "JoinOneThread failed\n");
        }
        else 
        {
            fprintf(stdout, "Joined %d\n", i);
        }
        fflush (stdout);
    }
    printf("All threads joined\n");

    return 0;
}
コード例 #7
0
ファイル: htab.c プロジェクト: gungun1010/hidden
int main(int argc, char *argv[])
{
    int numthreads = 0;
    int i;

    numthreads = 2;
    assert(numthreads < MAXTHREADS);

    for (i = 0; i < numthreads; i++)
    {
        printf("Creating thread\n");
        fflush(stdout);
        CreateOneThread(&threads[i], hello, 0);
        fflush(stdout);
    }

    for (i=0; i<numthreads; i++)
    {
        BOOL success;
        success = JoinOneThread (threads[i]);
        if (!success)
        {
            fprintf(stdout, "JoinOneThread failed\n");
        }
        else
        {
            fprintf(stdout, "Joined %d\n", i);
        }
        fflush (stdout);
    }

    printf("All threads joined\n");
    fflush(stdout);

    return 0;
}