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

  免費注冊 查看新帖 |

Chinaunix

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

[C] 關(guān)于信號處理的簡單入門問題 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2007-12-22 21:49 |只看該作者 |倒序瀏覽
#include <stdio.h>
#include <signal.h>

static flag = 0;
static void sig_usr(int);
int main()
{
    if (signal(SIGINT, sig_usr) == SIG_ERR)
        printf("SIGINT ERROR\n");
    if (signal(SIGBREAK, sig_usr) == SIG_ERR)
        printf("SIGBREAK ERROR\n");
    while(1);
    getchar();
    return 0;
}

static void sig_usr(int signo)
{
    if (signo == SIGINT)
        printf("I get SIGINT signal\n");
    if (signo == SIGBREAK)
        printf("I get SIGBREAK signal\n");
    flag = 1;
    getchar();
}
以上是簡單的模板,我想詢問的是,我用signal(SIGINT, sig_usr)捕捉了信號SIGINT,那 為什么只能用一次,第二次就退出程序了?
還有個問題,是關(guān)于信號堵塞的,看到有的地方說到,在信號處理函數(shù)處理完成前,信號是堵塞的,不是很理解,那如果這個信號處理函數(shù)是個循環(huán),那么其他信號就都被堵塞了嗎?還是只是該信號被堵塞。

論壇徽章:
0
2 [報告]
發(fā)表于 2007-12-22 21:58 |只看該作者
只是同一種信號被阻塞.

論壇徽章:
0
3 [報告]
發(fā)表于 2007-12-22 22:25 |只看該作者
謝謝,不過第一個問題是什么回事呢?

我不理解。

論壇徽章:
0
4 [報告]
發(fā)表于 2007-12-22 23:04 |只看該作者
原帖由 newliner 于 2007-12-22 21:49 發(fā)表
#include
#include

static flag = 0;
static void sig_usr(int);
int main()
{
    if (signal(SIGINT, sig_usr) == SIG_ERR)
        printf("SIGINT ERROR\n");
    if (signal(SIGBREAK, sig_us ...

SIGBREAK 是啥?

論壇徽章:
0
5 [報告]
發(fā)表于 2007-12-22 23:08 |只看該作者
某種信號,這沒用到的。

論壇徽章:
0
6 [報告]
發(fā)表于 2007-12-23 10:34 |只看該作者
你使用sigaction, 或者是在信號處理函數(shù)中再一次調(diào)用signal重新為該信號設(shè)置一次處理函數(shù).
然后你再看看結(jié)果.

論壇徽章:
0
7 [報告]
發(fā)表于 2007-12-24 21:07 |只看該作者
static void sig_usr(int signo)
{
    if (signo == SIGINT)
        printf("I get SIGINT signal\n");
    if (signo == SIGBREAK)
        printf("I get SIGBREAK signal\n");
    flag = 1;
    getchar(); //------這樣搞的鬼,去掉這行就可以多次捕捉Ctrl+C信號了。估計是getchar()中改變了SIGINT的處理句柄。
}

論壇徽章:
0
8 [報告]
發(fā)表于 2010-03-02 21:25 |只看該作者
呵呵,你輸入的ctrl+c被getchar()給吃了
您需要登錄后才可以回帖 登錄 | 注冊

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

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP