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

EV_READ的回調(diào)方法問題

ayamzh

源碼中

        // Non blocking.
        stream_set_blocking($this->_mainSocket, 0);

    public function acceptConnection($socket)
    {
        // Accept a connection on server socket.
        $new_socket = @stream_socket_accept($socket, 0, $remote_address);
        // Thundering herd.
        if (!$new_socket) {
            return;
        }

0是代表非阻塞么?是不時(shí)當(dāng)一個(gè) socket連上來 緩沖區(qū)有數(shù)據(jù)時(shí),才會(huì)觸發(fā)stream_socket_accept,這樣是不時(shí)阻塞非阻塞沒啥區(qū)別了。每次aceept都能得到socket

4505 3 0
3個(gè)回答

walkor 打賞

0非阻塞,設(shè)置非阻塞主要是為了讀$new_socket時(shí)不會(huì)阻塞。
當(dāng)客戶端鏈接上來時(shí),就會(huì)觸發(fā)觸發(fā)stream_socket_accept。不管緩沖區(qū)是否有數(shù)據(jù)。
stream_socket_accept不一定每次都能得到客戶端鏈接,因?yàn)橛卸鄠€(gè)進(jìn)程同時(shí)調(diào)用stream_socket_accept接受同一個(gè)鏈接的情況,只有一個(gè)能成功。

  • 暫無評(píng)論
ayamzh

了解,那如果設(shè)置1的話 ,拿不到socket連接時(shí),其他進(jìn)程就都阻塞住了事件循環(huán) ?

  • 暫無評(píng)論
walkor 打賞

不會(huì)。
設(shè)置非阻塞主要是為了讀$new_socket時(shí)不會(huì)阻塞。

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