当前位置:首页 > 4444临时 > 正文内容

[22][10][单选]有如下 C 语言程序:

4444临时11个月前 (02-02)

//program Hello/ void *a_in_Hello(void *arg {    printf("Hello, World!";    pthread_yield(; } int main(void {    pthread_t pthread_1;    int sta;    sta = pthread_create(&pthread_1, NULL, a_in_Hello, NULL;    if (sta == 0        printf("Ops, I can not create thread\n";    exit(NULL; } 上述程序经过正确编译链接后执行,当 pthread_yield 运行成功时,进程 Hello 有多少个线程?

0

1

2

3


答案

2


解析

【解析】pthread_yield 作用是释放 CPU 来运行另外一个线程。当主程序发布之后,题目中主程序变量为 sta,初始值为 0,创建线程之后比较两个线程 ID 是否相等,所以当 pthread_yield 运行成功后,进程 Hello 有 2 个线程,故本题答案选择 C 选项。

【涉及考点】

C 语言线程相关概念


转载请注明出处。

本文链接:http://pythonopen.com/?id=6930

相关文章

[12][21][单选]下列哪一项是执行打开文件操作时由操作系统返回的

文件名文件号文件描述符文件物理位置答案文件描述符解析执行打开文件操作时由操作系统返回的信息是文件描述...

[12][27][单选]用户进程在等待鼠标点击输入时,不断检测对应接口寄存器的完成位是否为1,该I/O设备控制方式称为

中断控制方式程序直接控制方式DMA方式通道控制方式答案程序直接控制方式解析程序直接控制方式是指由用户...

[12][28][单选]下列描述的现象中,哪一个是由于进程P1、P2因申请不同类资源而产生死锁的现象

P1申请—页内存,P2申请—页内存;P1释放—页内存,P2释放—页内存P1和P2先进行同步信号量P操...