有如下C语言程序 void*th_f(void*:arg) { printf("Hello World"); pthread_yield(0); } int main(void) { pthread_

admin2019-05-20  27

问题 有如下C语言程序
  void*th_f(void*:arg)
  {
    printf("Hello World");
    pthread_yield(0);
    }
    int main(void)
    {
    pthread_t tid;
    int st;
    st=pthread_create(&tid,NULL,th_f,NULL);
    if(st==0)
    printf("Oops,I can not createrhread\n");
    exit(NULL);
    }
  针对上述程序,下列叙述中哪一个是正确的?(    )

选项 A、线程th_f运行后主动退出
B、线程th_f运行后等待一个特定的线程退出
C、线程tn_f运行后主动释放CPU给其他线程
D、线程tn_f运行后进入等待态

答案C

解析 pfhread_create(&tid,NULL,th_f,NULL):创建线程后,运行该线程,th_f线程中调用了pthread_yield(0)。线程th_f运行后等待该线程退出后挂起自己,将CPU让给其他线程。故本题答案选择C选项。
转载请注明原文地址:https://jikaoti.com/ti/WhA7FFFM
0

最新回复(0)