欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

PHP異步執(zhí)行方法,模擬多線程

2023-08-16    分類: 網(wǎng)站建設(shè)

PHP 自己沒有多線程的東西,但可以曲線的辦法來造就出同樣的效果,比如多進(jìn)程的體例來達(dá)到異步調(diào)用,只限于飭令模式。

另外還有一種更簡單的體例可用于 Web 程序中,那就是用 fsockopen()、fputs() 來請(qǐng)求一個(gè) URL, 而無需等待返回,假如你在那個(gè)被請(qǐng)求的頁面(URL)中做些事情就相當(dāng)于異步了。

關(guān)鍵代碼如下:

<?php
$fp=fsockopen('localhost',80,&$errno,&$errstr,5);
if(!$fp){
	echo "$errstr ($errno)<br />/n"; 
}
fputs($fp,"GET another_page.php?flag=1/r/n"); 
fclose($fp);

上面的代碼向頁面 another_page.php 發(fā)送完請(qǐng)求就不管了四川做網(wǎng)站報(bào)名,用不著等待請(qǐng)求頁面的響應(yīng)數(shù)據(jù),行使這一點(diǎn)就可以在被請(qǐng)求的頁面 another_page.php 中異步的做些事情了。

比如,一個(gè)很切實(shí)的應(yīng)用,我們每當(dāng)發(fā)表了一篇新日志后需要給所有該日志的訂閱者發(fā)個(gè)郵件通知, 假如按照通常的體例就是:

日志寫完 -> 點(diǎn)提交按鈕 -> 日志插入到數(shù)據(jù)庫 -> 發(fā)送郵件通知 -> 告知撰寫者發(fā)布成功

那么作者在點(diǎn)提交按鈕到看到成功提醒之間可能會(huì)等待很常時(shí)間,基本是在等郵件發(fā)送的過程,比如連接郵件服務(wù)異常、或器緩慢或是訂閱者太多。而現(xiàn)實(shí)上是不管郵件發(fā)送成功與否,保證日志保存成功基本可接受的,所以等待郵件發(fā)送的過程是很不經(jīng)濟(jì)的,這個(gè)過程可異步來執(zhí)行,并且郵件發(fā)送的效果不太關(guān)心或以日志形式記錄備查。

改進(jìn)后的流程就是:

日志寫完 -> 點(diǎn)提交按鈕 -> 日志插入到數(shù)據(jù)庫 ---> 告知撰寫者發(fā)布成功 ---> 發(fā)送郵件通知 -> [記下日志]

寫個(gè)現(xiàn)實(shí)的程序來測試一下上海做網(wǎng)站中心app應(yīng)用,有兩個(gè)文件,分別是 write.php 和 sendmail.php,在 sendmail.php 用 sleep(seconds) 來模擬程序執(zhí)行所使用時(shí)間。

write.php,執(zhí)行耗時(shí) 1 秒:

<?php  
function asyn_sendmail(){ 
	$fp=fsockopen('localhost',80,&$errno,&$errstr,5);
	if(!$fp){
		echo "$errstr ($errno)<br />/n";
	} 
	sleep(1); 
	fputs($fp,"GET /sendmail.php?param=1/r/n"); #請(qǐng)求的資源 URL 一定要寫對(duì) 
	fclose($fp); 
}  
echo time().'<br>'; 
echo 'call asyn_sendmail<br>'; 
asyn_sendmail(); 
echo time().'<br>'; 

sendmail.php,執(zhí)行耗時(shí) 10 秒:

<?php 
sleep(10); 
fopen("C:/".time(),"w");

通過頁面訪問 write.php,頁面輸出:

1272472697

call asyn_sendmail

1272472698

并且在 C:/ 生成文件:

1272472708

從上面的效果可以看出 sendmail.php 至少花費(fèi) 10 秒,但不會(huì)壅塞 write.php 繼續(xù)往下執(zhí)行,注解這一過程是異步的。

您可能感愛好的文章

  • php異步調(diào)試和線上調(diào)試網(wǎng)站程序的方法
  • javascript 異步加載,提高網(wǎng)頁的瀏覽速度
  • PHP Curl批量多線程打開網(wǎng)址的類
  • PHP判斷服務(wù)器SSL是否啟用,也就是判斷是否支撐HTTPS連接
  • PHP 行使 Curl Functions 實(shí)現(xiàn)多線程抓取網(wǎng)頁和下載文件
  • php獲取目錄所有文件并將效果保存到數(shù)組的程序
  • php行使curl實(shí)現(xiàn)多線程的類,php curl多線程下載圖片
  • PHP行使CURL_MULTI實(shí)現(xiàn)多線程

網(wǎng)頁題目:PHP異步執(zhí)行方法,模擬多線程
分享鏈接:http://aaarwkj.com/news40/276140.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)響應(yīng)式網(wǎng)站、網(wǎng)站排名云服務(wù)器、網(wǎng)站改版、企業(yè)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)
黄片色呦呦视频免费看| 综合激情网激情五月天| 2022国产精品一区| 蜜臀在线免费观看黄片视频| 97成品视频在线播放| 人妻猛烈进入中文字幕| 久久精品国产亚洲夜色av网站 | 精品亚洲av一区二区三区| 开心五月六月婷婷在线| av中文字幕乱码在线看| 日本一区二区电影在线看| 中文字幕在线不卡精品视频| 香蕉夜夜草草久久亚洲香蕉| 精品一级人片内射视频| 亚洲一区二区午夜福利亚洲| 夜夜草av一区二区三区| 韩国三级网站在线观看视频 | 国内精品亚洲成av人片麻豆 | 熟妇人妻精品视频一区二区| 热热久久这里只有精品| 日本成人午夜福利电影| 免费观看中国性生活片| 四虎在线永久观看视频| 久久免费少妇高潮99精品 | 午夜伦理视频免费观看 | 精品人妻av中文字幕乱| 精品国产精品中文字幕| 性激烈的欧美三级男同| 欧美亚洲另类不卡在线| av天堂资源在线播放| 婷婷久久五月综合激情| 亚洲一区二区精品天堂| 中文字幕精品一区二区介绍| 国产精品_国产精品_k频道| av天堂资源地址在线观看| 九九热在线视频观看最新| 亚洲av香蕉综合一区| 人人妻夜夜天天俺去添噜| 日韩视频 一区 二区| 饥渴少妇高潮特殊按摩| 日日爱欧美精品亚洲成|