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

workman 循環(huán)發(fā)送數(shù)據(jù)的問題。

caption

我們的業(yè)務是用戶配置一個時間間隔,定時的去發(fā)送視頻,圖片,文字,
每個視頻發(fā)送需要有個五秒的間隔,圖片文字也是的。而且要求先發(fā)視頻,再發(fā)圖,再發(fā)文字。
請問這種怎么實現(xiàn)?

我目前的實現(xiàn)是定時器嵌套,實現(xiàn)的效果不是很理想,經(jīng)常出現(xiàn)先發(fā)文字的情況 ,請問這樣起定時器能夠控制先發(fā)視頻圖片的順序嗎?
代碼如下:

if(!empty($content['vedio']) && $content['vedio']){
            $vedio = $content['vedio'];
            $i = 0;
            $count = count($vedio);
            $timer_id = Timer::add(8, function()use(&$timer_id ,&$fromId, &$toId, &$vedio, &$i ,&$count)
            {
                $this->sendVideo($fromId, $toId, $vedio[$i]);
                $i++;
                if($i >= $count){
                    Timer::del($timer_id);
                }
            }); 
        }
        //圖片
        if(!empty($content['pic_urls']) && $content['pic_urls']){
            $pic_urls = $content['pic_urls'];
            $i = 0;
            $count = count($pic_urls);
            $p_timer_id = Timer::add(5, function()use(&$p_timer_id ,&$fromId, &$toId, &$pic_urls, &$i ,&$count)
            {
                $this->sendImage($fromId, $toId, $pic_urls[$i]);
                $i++;
                if($i >= $count){
                    Timer::del($p_timer_id);
                }
            });
        }
        //文字
        if(!empty($content['content']) && $content['content']){
            $text = $content['content'];
            $i = 0;
            $count = count($text);
            $t_timer_id = Timer::add(3, function()use(&$t_timer_id ,&$fromId, &$toId, &$text, &$i ,&$count)
            {
                $this->sendText($fromId, $toId, $text[$i]);
                $i++;
                if($i >= $count){
                    Timer::del($t_timer_id);
                }
            });
        }
2925 1 0
1個回答

jackie_lt

按照你的代碼,進程會先初始化三個定時器。視頻定時器(每8s執(zhí)行一次),圖片定時器(5s),文字定時器(3s),注意這三個定時器會在這段代碼執(zhí)行的時候一次都初始化,你可以通過打印每次的timer_id發(fā)現(xiàn),代碼執(zhí)行后三個定時器都是設置好了的。所以執(zhí)行順序就變成了3s后第一段文字,5s后第一張圖片,6s后第二段文字,8s后第一個視頻,9s后第三段文字,10s后第二張圖片。
所以分開設置定時器似乎是不能滿足需求的,可以把視頻+圖片+文字合起來作為一個組。每個定時器發(fā)送一組,這樣就有先后順序了。

  • caption 2019-12-16

    分組的方式也試過,沒有實現(xiàn)他們的間隙,后來只能用sleep去實現(xiàn)了

年代過于久遠,無法發(fā)表回答
??