0

不同线程使用一个功能是否安全?或者我必须在这里使用信号量?

static void *func1(void *arg)
{
    ...
    return NULL;
}

int main()
{
    ...
    pthread_create(&thread, &thread_attr, func1, (void *)data);
    pthread_create(&thread2, &thread_attr2, func1, (void *)data2);
    ...

    return 0;
}

谢谢!

4

1 回答 1

0

您可以让多个线程使用相同的功能。如果该函数使用将在线程之间共享的数据,则只需要使用同步(信号量、互斥体等)。如果所有数据都在 data 和 data2 中,则不需要信号量。

于 2013-06-25T15:56:39.523 回答