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

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

Chinaunix

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

[C] 為什么解除SIGINT阻塞和pause之間發(fā)生的SIGINT信號(hào)會(huì)丟失? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2016-04-15 21:47 |只看該作者 |倒序?yàn)g覽
APUE書上這么說,我感覺解除以后不管pause前pause后發(fā)生SIGINT都應(yīng)該執(zhí)行默認(rèn)的中斷終止吧?為何書上說信號(hào)丟失呢?

#include "apue.h"
#include <signal.h>

int
main(void)
{
        sigset_t         newmask, oldmask;
       
        sigemptyset(&newmask);
        sigaddset(&newmask, SIGINT);
       
        if (sigprocmask(SIG_BLOCK, &newmask, &oldmask) < 0)
                err_sys("SIG_BLOCK error");
       
        sleep(5);
       
        if (sigprocmask(SIG_SETMASK, &oldmask, NULL) < 0)
                err_sys("SIG_SETMASK error");

        pause();

        exit(0);

}
實(shí)驗(yàn)結(jié)果我在5秒內(nèi)和5秒后按一次ctrl-c都能夠中斷程序的?書上說錯(cuò)了?

論壇徽章:
44
15-16賽季CBA聯(lián)賽之浙江
日期:2021-10-11 02:03:59程序設(shè)計(jì)版塊每日發(fā)帖之星
日期:2016-07-02 06:20:0015-16賽季CBA聯(lián)賽之新疆
日期:2016-04-25 10:55:452016科比退役紀(jì)念章
日期:2016-04-23 00:51:2315-16賽季CBA聯(lián)賽之山東
日期:2016-04-17 12:00:2815-16賽季CBA聯(lián)賽之福建
日期:2016-04-12 15:21:2915-16賽季CBA聯(lián)賽之遼寧
日期:2016-03-24 21:38:2715-16賽季CBA聯(lián)賽之福建
日期:2016-03-18 12:13:4015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-05 00:55:2015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-04 21:11:3615-16賽季CBA聯(lián)賽之天津
日期:2016-11-02 00:33:1215-16賽季CBA聯(lián)賽之浙江
日期:2017-01-13 01:31:49
2 [報(bào)告]
發(fā)表于 2016-04-15 22:05 |只看該作者
程序看起來貌似沒什么問題,你確定5秒內(nèi)可以Ctrl-C中斷?

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2016-04-15 22:23 來自手機(jī) |只看該作者
本帖最后由 fmjz_qs214 于 2016-04-15 22:25 編輯

我確定可以的,5秒內(nèi)按是約延遲到5秒中斷,5秒后按是立刻中斷。不過我剛才搜索了一下,有人問過這個(gè)問題,得到的解釋是書上說的丟失信號(hào)不是說信號(hào)沒被處理,而是因?yàn)樵趐asue前被處理,相對(duì)于pasue而言沒有等到這個(gè)信號(hào)就消失了,這個(gè)丟失不是真正意義上的丟失,不知道這個(gè)解釋是否合理?

論壇徽章:
44
15-16賽季CBA聯(lián)賽之浙江
日期:2021-10-11 02:03:59程序設(shè)計(jì)版塊每日發(fā)帖之星
日期:2016-07-02 06:20:0015-16賽季CBA聯(lián)賽之新疆
日期:2016-04-25 10:55:452016科比退役紀(jì)念章
日期:2016-04-23 00:51:2315-16賽季CBA聯(lián)賽之山東
日期:2016-04-17 12:00:2815-16賽季CBA聯(lián)賽之福建
日期:2016-04-12 15:21:2915-16賽季CBA聯(lián)賽之遼寧
日期:2016-03-24 21:38:2715-16賽季CBA聯(lián)賽之福建
日期:2016-03-18 12:13:4015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-05 00:55:2015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-04 21:11:3615-16賽季CBA聯(lián)賽之天津
日期:2016-11-02 00:33:1215-16賽季CBA聯(lián)賽之浙江
日期:2017-01-13 01:31:49
4 [報(bào)告]
發(fā)表于 2016-04-15 22:41 |只看該作者
回復(fù) 3# fmjz_qs214

被block的信號(hào)會(huì)等到unblock的時(shí)候再處理,不會(huì)“丟棄”。
所謂“信號(hào)丟失”,我猜書上的意思是多一個(gè)SIGINT只會(huì)deliver最后一個(gè),也就是說你在5秒內(nèi)多次按下ctrl-c,5秒過后signal handler只會(huì)激活一次。

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2016-04-17 07:35 來自手機(jī) |只看該作者
哦,就是說阻塞的信號(hào)不排隊(duì)吧

論壇徽章:
44
15-16賽季CBA聯(lián)賽之浙江
日期:2021-10-11 02:03:59程序設(shè)計(jì)版塊每日發(fā)帖之星
日期:2016-07-02 06:20:0015-16賽季CBA聯(lián)賽之新疆
日期:2016-04-25 10:55:452016科比退役紀(jì)念章
日期:2016-04-23 00:51:2315-16賽季CBA聯(lián)賽之山東
日期:2016-04-17 12:00:2815-16賽季CBA聯(lián)賽之福建
日期:2016-04-12 15:21:2915-16賽季CBA聯(lián)賽之遼寧
日期:2016-03-24 21:38:2715-16賽季CBA聯(lián)賽之福建
日期:2016-03-18 12:13:4015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-05 00:55:2015-16賽季CBA聯(lián)賽之佛山
日期:2016-02-04 21:11:3615-16賽季CBA聯(lián)賽之天津
日期:2016-11-02 00:33:1215-16賽季CBA聯(lián)賽之浙江
日期:2017-01-13 01:31:49
6 [報(bào)告]
發(fā)表于 2016-04-17 12:00 |只看該作者
回復(fù) 5# fmjz_qs214

只有realtime signal才會(huì)排隊(duì)。
您需要登錄后才可以回帖 登錄 | 注冊(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