第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

信號和信號的區(qū)別是什么?

信號和信號的區(qū)別是什么?

C
慕哥6287543 2019-07-09 10:50:17
信號和信號的區(qū)別是什么?我正要在我們這里的一個(gè)應(yīng)用程序中添加一個(gè)額外的信號處理程序,我注意到作者使用了sigaction()設(shè)置其他信號處理程序。我要用signal()..為了遵循慣例,我應(yīng)該使用sigaction()但是如果我是白手起家的,我應(yīng)該選擇哪一個(gè)呢?
查看完整描述

3 回答

?
精慕HU

TA貢獻(xiàn)1845條經(jīng)驗(yàn) 獲得超8個(gè)贊

它們是操作系統(tǒng)信號設(shè)備的不同接口。如果可能的話,人們應(yīng)該更喜歡使用Sigaction來發(fā)送信號,因?yàn)镾ignal()具有實(shí)現(xiàn)定義的(通常是容易發(fā)生競爭的)行為,并且在Windows、OSX、Linux和其他UNIX系統(tǒng)上的行為有所不同。

看這個(gè)安全票據(jù)關(guān)于細(xì)節(jié)。


查看完整回答
反對 回復(fù) 2019-07-09
?
一只甜甜圈

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超5個(gè)贊

Signal()是標(biāo)準(zhǔn)C,Sigaction()不是。

如果您能夠使用任何一種(也就是說,您在POSIX系統(tǒng)上),那么使用Sigaction();它沒有指定信號()是否重置處理程序,這意味著要在處理程序中再次調(diào)用signal()是可移植的。更糟糕的是,這是一場競賽:如果您快速地獲得兩個(gè)信號,而第二個(gè)信號是在重新安裝處理程序之前傳遞的,那么您將得到默認(rèn)的操作,這可能會殺死您的進(jìn)程。σ()另一方面,保證使用“可靠”的信號語義。您不需要重新安裝處理程序,因?yàn)樗肋h(yuǎn)不會被重置。使用SA_RESTART,您還可以獲得一些系統(tǒng)調(diào)用來自動(dòng)重新啟動(dòng)(因此您不必手動(dòng)檢查EINTR)。σ()有更多的選擇和可靠,所以它的使用是鼓勵(lì)的。

Psst.。不要告訴任何人我告訴過您這一點(diǎn),但是POSIX目前有一個(gè)函數(shù)bsd_signal(),它的作用類似于signal(),但是給出了BSD語義,這意味著它是可靠的。它的主要用途是移植假定有可靠信號的舊應(yīng)用程序,POSIX不建議使用它。


查看完整回答
反對 回復(fù) 2019-07-09
  • 3 回答
  • 0 關(guān)注
  • 573 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號