稍后调用线程函数

时间:2015-10-05 06:57:47

标签: c multithreading pthreads

我在C中有一个问题? 是否有可能创建一个线程并在以后需要时调用线程函数? 可能在需要时使用thread_start例程。 否则,如果我使用pthread_create,将多次创建线程,并且必须小心处理。 请帮我。提前谢谢。

1 个答案:

答案 0 :(得分:2)

您可以使用信号量,只需在while循环中阻止线程函数:

    while(1){
        sem_wait(my_semaphore);
        code_that_needs_to_be_done_in_thread;
    }

..无论什么时候需要你的线程,只需简单地发出信号:

    sem_post(my_semaphore);
    ...
    other_code;
    sem_post(my_semaphore);
    ...