PHP中信號(hào)處理機(jī)制的操作方法?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!

十年的淮陰網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都營(yíng)銷(xiāo)網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶(hù)設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整淮陰建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。成都創(chuàng)新互聯(lián)公司從事“淮陰網(wǎng)站設(shè)計(jì)”,“淮陰網(wǎng)站推廣”以來(lái),每個(gè)客戶(hù)項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
function sig_handler($sig)
{
print("handled sig: $sig\n");
}
pcntl_signal(SIGIO, "sig_handler");
posix_kill(posix_getpid(),SIGIO);
while(true)
{
posix_kill(posix_getpid(),SIGIO);
pcntl_signal_dispatch();
sleep(1);
}最好自己手動(dòng)循環(huán)處理信號(hào)隊(duì)列,而不是使用php提供的的declare(ticks=1),tick_handler()這種信號(hào)處理機(jī)制,因?yàn)閠ick機(jī)制的性能問(wèn)題,每執(zhí)行一條語(yǔ)句都回調(diào)tick_handler查看是否有信號(hào),而很大部分時(shí)間是沒(méi)有信號(hào)的。
posix_signal設(shè)置信號(hào)的回調(diào)處理,
posix_kill僅僅是把信號(hào)放入進(jìn)程的信號(hào)待處理隊(duì)列中,所有并不會(huì)觸發(fā)信號(hào)回調(diào),由pcntl_signal_dispatch處理信號(hào)隊(duì)列中的信號(hào)
posix_getpwnam("nginx"):獲取用戶(hù)名的uid,gid等信息
pcntl_signal(SIGPIPE, SIG_IGN, false):忽略?xún)?nèi)核發(fā)來(lái)的SIGPIPE信號(hào),當(dāng)連接已closed,進(jìn)程繼續(xù)發(fā)數(shù)據(jù)到無(wú)效socket,系統(tǒng)會(huì)收到含RST 控制位TCP包,系統(tǒng)會(huì)發(fā)出一個(gè)SIGPIPE信號(hào)給進(jìn)程,告訴進(jìn)程這個(gè)連接已經(jīng)斷開(kāi)了,不要再寫(xiě)了。該信號(hào)的默認(rèn)處理是終止進(jìn)程,進(jìn)程可以捕獲它并忽略該信號(hào)以免不情愿的被終止。
socket上下文選項(xiàng):
backlog:用于限制流監(jiān)聽(tīng)隊(duì)列中未完成連接的連接數(shù)量
so_reuseport:重用端口(由內(nèi)核調(diào)度連接到多個(gè)監(jiān)聽(tīng)同一個(gè)端口的進(jìn)程,由于是通過(guò)hash方式來(lái)標(biāo)志連接對(duì)應(yīng)的進(jìn)程,所以監(jiān)聽(tīng)進(jìn)程數(shù)是不能改變的,)
定時(shí)器信號(hào)處理
pcntl_signal(SIGALRM,"sig_handler");
pcntl_alarm(2);
function sig_handler($sig)
{
echo "one second after";
}
while (1)
{
pcntl_signal_dispatch();
sleep(1);
}感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)PHP中信號(hào)處理機(jī)制的操作方法大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
網(wǎng)站名稱(chēng):PHP中信號(hào)處理機(jī)制的操作方法
網(wǎng)頁(yè)鏈接:http://www.yijiale78.com/article18/ghdddp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、小程序開(kāi)發(fā)、網(wǎng)站排名、自適應(yīng)網(wǎng)站、、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)