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

定時(shí)器Timer 模擬任務(wù)隊(duì)列,任務(wù)重復(fù)問題

柒企鵝

麻煩 walkor 有時(shí)間幫我看一下,
在處理數(shù)據(jù)的定時(shí)器中,會出現(xiàn)重復(fù)的任務(wù),
任務(wù)數(shù)組我是以數(shù)據(jù)庫邏輯id為下標(biāo)的,
希望能幫忙指出問題在哪?或有什么更好的實(shí)現(xiàn)方式

 $queue = array(); // 任務(wù)數(shù)組

        //  查詢?nèi)蝿?wù)定時(shí)器
        Timer::add(1, function () use (&$queue, $getSwitch) {

            $list = $getSwitch->get_all_task();  // 從數(shù)據(jù)庫里查詢出來的數(shù)組,條件是狀態(tài)為0,邏輯ID做數(shù)組下標(biāo)

            $task = array_diff_key($list, $queue);

            $queue = array_merge($queue, $task);

        });

        // 處理數(shù)據(jù)
        Timer::add(0.2, function () use (&$queue, $getSwitch) {

            $bunk = current($queue);

            $getSwitch->set_task_status((int)$bunk, 1); // 修改狀態(tài)為1

            $task = array_shift($queue);  // 修改狀態(tài)再彈出數(shù)組

            // 重置內(nèi)部指針
            reset($queue);

            /_ CODE 處理$task任務(wù) _/

        });
4224 1 1
1個(gè)回答

walkor 打賞

看不出來啊

  • 暫無評論
年代過于久遠(yuǎn),無法發(fā)表回答
??