[請益] php 某些 IO 的 block

看板PHP作者 (Mr. Pan)時間13年前 (2012/06/29 14:19), 編輯推噓1(101)
留言2則, 2人參與, 最新討論串1/1
小弟對 php 不算很熟,有幾個問題想請教, 主要是關於 php 進行 IO 的部分: 底下幾個 php 函數: 1. fopen 後用 fscanf() 這類的函數 會不會 block 住這個程序? 也就是說會停在 fscanf 這行等待讀取 如果沒有資料近來,就不會往下跑 2. php socket 的 socket_read 是否也會 block 呢? 因為執行這段的 client 會很多,而打算 hold 住 client 一小段時間 如果用 while( lock ){ .... },似乎會很耗電腦資源(一直跑回圈) (sleep 這個我不考慮,因為時間不是固定的) 也就是想要能夠 hold 住 client 一段時間並且盡量不要用太多伺服器資源 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.39.75 ※ 編輯: darkk6 來自: 140.116.39.75 (06/29 14:20)

06/29 14:49, , 1F
為啥要hold client 何不改成讓client過一會來poll你
06/29 14:49, 1F

06/30 00:22, , 2F
socket_read 有 non_block mode
06/30 00:22, 2F
文章代碼(AID): #1FxKa1rQ (PHP)
文章代碼(AID): #1FxKa1rQ (PHP)