亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2864 | 回復(fù): 4
打印 上一主題 下一主題

[C] 關(guān)于sigprocmask的一個(gè)問題 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2010-09-12 15:29 |只看該作者 |倒序?yàn)g覽
APUE中有一段話我很疑惑,大致是這樣的:
當(dāng)我阻塞SIGINT后又用sigprocmask解除對(duì)此信號(hào)的阻塞,就在解除阻塞后緊跟pause語句執(zhí)行暫停;可是在pause之前,sigprocmask之后這個(gè)時(shí)間窗口中出現(xiàn)SIGINT的傳遞會(huì)發(fā)生什么情況呢?

APUE中說的是該信號(hào)會(huì)丟失,我覺得不能理解,因?yàn)閟igprocmask(SIG_SETMASK, &oldmask, NULL)不是把阻塞解除了么?那么如果在后面緊接的pause()執(zhí)行之前,把之前就已經(jīng)block了的SIGINT信號(hào)傳遞過來了,那勢(shì)必按照默認(rèn)的方式,終止該進(jìn)程?為什么說會(huì)丟失這個(gè)信號(hào)呢?

幫忙指導(dǎo)一下,謝謝~

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2010-09-12 16:30 |只看該作者
你理解的沒錯(cuò),不過要深入理解需要結(jié)合sigsuspend.
APUE在這里所說的信號(hào)丟失,不是真正的丟失,而是沒有被接下來的pause等到。
如果你在程序一開始就注冊(cè)了信號(hào)處理函數(shù),那么在sigprocmask和pause之間的
這個(gè)信號(hào)還是會(huì)觸發(fā)信號(hào)處理函數(shù),如果信號(hào)是SIGINT,缺省就會(huì)中止進(jìn)程。

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2010-09-12 18:57 |只看該作者
回復(fù) 2# insnowind

聽你這么一解釋,清楚很多了~我沒能理解英文里面他說的 "We might not see the signal again"只得是pause無法收到這個(gè)signal,我以為他說的是這個(gè)進(jìn)程收不到這個(gè)信號(hào),那就叫人困惑了~呵呵!謝謝你的幫助!

論壇徽章:
0
4 [報(bào)告]
發(fā)表于 2010-09-12 20:11 |只看該作者
學(xué)習(xí)了。

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2010-09-13 22:13 |只看該作者
是pause()等不到這個(gè)信號(hào),不是進(jìn)程收不到這個(gè)信號(hào)
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP