国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

定時(shí)器是否會(huì)影響收數(shù)據(jù)

隋意
$worker = new Worker('tcp://0.0.0.0:9090'); //http協(xié)議
//啟動(dòng)1個(gè)進(jìn)程對(duì)外提供服務(wù)
$worker -> count = 1;
Worker::$daemonize = true;
Worker::$stdoutFile = '/tmp/stdout.log';
//增加一個(gè)屬性
$worker -> uidConnections = array();
$worker -> onWorkerStart = function($worker){
   $worker -> onConnect = function($connection){
      global $worker;
      $ip = $connection -> getRemoteIp();
      $id = $connection -> id;
      $worker -> uidConnections = $connection;
      echo "連接成功";
           $GLOBALS = Timer::add(0.001,array('DealData','dealSream'),array($id, $connection),true);//隔1ms處理一次stream
   };
   $worker -> onMessage = function($connection,$datas){
      //#考慮校驗(yàn)
           $id = $connection -> id;
           if(!isset($GLOBALS)){
               $GLOBALS = $datas;
           }else{
               $GLOBALS .= $datas;//接收流到緩沖區(qū)
           }
   };

比如這段程序,
1.如果我的定時(shí)器那邊還沒(méi)執(zhí)行完的情況下,onmessage區(qū)間是否還能正常接收存儲(chǔ)數(shù)據(jù)?
2.如果我設(shè)置進(jìn)程數(shù)是2或者更多,是系統(tǒng)自動(dòng)選擇進(jìn)行執(zhí)行,還是需要手動(dòng)規(guī)定某個(gè)進(jìn)程執(zhí)行哪些業(yè)務(wù),比如if($worker -> id ==0){第一個(gè)進(jìn)程}else{其他進(jìn)程業(yè)務(wù)}?
3.‘1’問(wèn)題中定時(shí)器會(huì)影響收數(shù)據(jù),那我能不能開(kāi)兩個(gè)進(jìn)程,一個(gè)進(jìn)程專(zhuān)門(mén)運(yùn)行定時(shí)器處理數(shù)據(jù),另一個(gè)進(jìn)程做目前的其他業(yè)務(wù)。改成這樣的代碼

$worker = new Worker('tcp://0.0.0.0:9090'); //http協(xié)議
//啟動(dòng)1個(gè)進(jìn)程對(duì)外提供服務(wù)
$worker -> count = 2;
Worker::$daemonize = true;
Worker::$stdoutFile = '/tmp/stdout.log';
//增加一個(gè)屬性
$worker -> uidConnections = array();
$worker -> onWorkerStart = function($worker){if($worker -> id == 0){$GLOBALS = Timer::add(0.001,array('DealData','dealSream'),array($id, $connection),true);//隔1ms處理一次stream}else{
   $worker -> onConnect = function($connection){
      global $worker;
      $ip = $connection -> getRemoteIp();
      $id = $connection -> id;
      $worker -> uidConnections = $connection;
      echo "連接成功";

   };
   $worker -> onMessage = function($connection,$datas){
      //#考慮校驗(yàn)
           $id = $connection -> id;
           if(!isset($GLOBALS)){
               $GLOBALS = $datas;
           }else{
               $GLOBALS .= $datas;//接收流到緩沖區(qū)
           }
   };
3206 1 0
1個(gè)回答

walkor 打賞

當(dāng)前進(jìn)程的定時(shí)器沒(méi)執(zhí)行完,當(dāng)前進(jìn)程的onMessage會(huì)排隊(duì)等待,不會(huì)被觸發(fā)。
你可以單獨(dú)new 一個(gè)Worker處理定時(shí)任務(wù),比如
?
$task = new Worker();
$task->onWorkerStart = function () {
? ? Timer::add(...
};
?
$worker = new Worker('tcp://0.0.0.0:9090');
$worker...

  • 隋意 2019-01-24

    如果這樣的話(huà)又涉及到進(jìn)程之間的通訊了吧。

  • 隋意 2019-01-24

    如果onMessage一直排隊(duì)等待著,而客戶(hù)端還源源不斷的發(fā)送數(shù)據(jù)流會(huì)有什么現(xiàn)象?老數(shù)據(jù)會(huì)被新數(shù)據(jù)替換嗎,會(huì)有哪個(gè)回調(diào)函數(shù)被觸發(fā)嗎

  • walkor 2019-01-25

    同一個(gè)連接源源不斷發(fā)送數(shù)據(jù),服務(wù)端無(wú)法及時(shí)處理,這些數(shù)據(jù)會(huì)堆積在客戶(hù)端socket緩沖區(qū),緩沖區(qū)滿(mǎn)后客戶(hù)端無(wú)法再發(fā)送數(shù)據(jù)。不會(huì)有老數(shù)據(jù)替換新數(shù)據(jù)的情況

  • dingfei 2019-05-07

    @1:發(fā)現(xiàn)問(wèn)題,定時(shí)器一次接一次執(zhí)行,不給時(shí)間去處理收到的數(shù)據(jù),怎么讓定時(shí)器的優(yōu)先級(jí)小于處理端口收到的數(shù)據(jù)?效果:先處理完數(shù)據(jù)再去判斷是否執(zhí)行下一次定時(shí)器

年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??