2013-06-25 86 views
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; 
} 

谢谢!

回答

0

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

相关问题