新聞中心
在linux系統(tǒng)開發(fā)中,異步編程往往會(huì)比阻塞編程更為受歡迎。async(異步)編程是一種編程技術(shù),在這種技術(shù)中,可以在一個(gè)進(jìn)程(也就是一個(gè)程序)完成一項(xiàng)基本任務(wù)后,就會(huì)把它的結(jié)果發(fā)送給另一個(gè)進(jìn)程,而不是該進(jìn)程等待,然后在其完成另一個(gè)任務(wù)之前才返回其結(jié)果。在Linux中,這個(gè)異步編程技術(shù)是通過一個(gè)名為fasync(Fast Asynchronous)函數(shù)來實(shí)現(xiàn)的。

創(chuàng)新互聯(lián)于2013年創(chuàng)立,先為高邑等服務(wù)建站,高邑等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為高邑企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。
首先,我們來看一下fasync函數(shù)的聲明:
int fasync(int fd, struct file *filp, int on);
fd是要用來處理異步通知的文件描述符;filp是一個(gè)指向struct file的指針,但實(shí)際上它不會(huì)用到該結(jié)構(gòu);on是一個(gè)標(biāo)志,如果設(shè)置為1,則表明要打開異步通知,如果為0,則表明要關(guān)閉異步通知。
fasync可以讓應(yīng)用程序在某個(gè)文件被修改時(shí)接收到異步通知,而對(duì)修改文件的不同操作則發(fā)送不同的信號(hào)。例如,如果在一個(gè)文件中寫入數(shù)據(jù),則會(huì)發(fā)送SIGIO(輸入輸出)信號(hào);如果文件被關(guān)閉,則發(fā)送SIGHUP(掛斷)信號(hào);如果文件被移除(刪除),則發(fā)送SIGURG(可恢復(fù))信號(hào);如果文件被改名,則發(fā)送SIGUSR1(用戶信號(hào)1)信號(hào)等等。
總結(jié)而言,fasync函數(shù)允許應(yīng)用程序注冊(cè)文件描述符,并且可以接收文件發(fā)生變化時(shí)相應(yīng)的信號(hào)通知。在Linux系統(tǒng)中,fasync函數(shù)也是必不可少的,因?yàn)樗梢蕴岣叱绦虻倪\(yùn)行性能和提供更高的可用性。
四川成都云服務(wù)器租用托管【創(chuàng)新互聯(lián)】提供各地服務(wù)器租用,電信服務(wù)器托管、移動(dòng)服務(wù)器托管、聯(lián)通服務(wù)器托管,云服務(wù)器虛擬主機(jī)租用。成都機(jī)房托管咨詢:13518219792
創(chuàng)新互聯(lián)(www.cdcxhl.com)擁有10多年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗(yàn)、開啟建站+互聯(lián)網(wǎng)銷售服務(wù),與企業(yè)客戶共同成長(zhǎng),共創(chuàng)價(jià)值。
分享文章:探索Linux中的異步編程:Fasync函數(shù)(linuxfasync)
分享鏈接:http://m.5511xx.com/article/cocgcdp.html


咨詢
建站咨詢
