C: Was ist der Weg, um eine poolthread mit pthreads?

Habe ich eine Warteschlange von jobs, und ich will einen pool von 4 threads in denen ich werfen kann meine Aufträge an. Was ich geblieben bin, ist, wie man die Fäden und halten Sie Sie ausgesetzt werden, während es gibt keine Arbeit.

JOB QUEUE        | job1 | job2 | job3 | job4 | ..

THREAD POOL      | thread1 | thread2 | thread3 | thread4 |

Erstellen der threads, die ich derzeit bei der Initialisierung Punkt:

for (t=0; t<num_of_threads; t++){
    pthread_create(&(threads[t]), NULL, doSth2, NULL);
}

Wo num_of_threads=4 und doSth2 ist eine Funktion, mit nichts drin.
Also erst einmal ich habe die 4 threads und Sie sind fertig mit doSth2, wie kann ich Ihnen neue Arbeit zu tun, ohne Sie zu töten?

InformationsquelleAutor der Frage Pithikos | 2011-08-05

Schreibe einen Kommentar