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

\stream_socket_client $flag STREAM_CLIENT_ASYNC_CONNECT 和 STREAM_CLIENT_CONNECT 區(qū)別是什么?

meows
        $this->_socket = \stream_socket_client("{$this->transport}://{$this->_remoteAddress}", $errno, $errstr, 0,
            \STREAM_CLIENT_CONNECT);
  1. 上面的代碼會(huì)報(bào)錯(cuò),如果設(shè)置為 STREAM_CLIENT_ASYNC_CONNECT 連接超時(shí)0 就不會(huì)報(bào)錯(cuò)。
    請(qǐng)問(wèn)這是為什么???
2942 1 0
1個(gè)回答

phpcreeper
  1. 首先要區(qū)分清楚socket超時(shí)概念,一個(gè)是指連接超時(shí),另一個(gè)是指數(shù)據(jù)傳輸超時(shí); 而stream_socket_client()函數(shù)的最后兩個(gè)參數(shù)都是針對(duì)TCP連接階段這個(gè)生命周期而言的;
  2. 顧名思義最后的位參: STREAM_CLIENT_CONNECT 和 STREAM_CLIENT_ASYNC_CONNECT, 前一個(gè)表示發(fā)起同步TCP連接,此時(shí)$timeout參數(shù)配套生效,表示最大經(jīng)過(guò)$timeout秒之后要是建立連接失敗或者發(fā)生意外,那么就會(huì)報(bào)告系統(tǒng)級(jí)的錯(cuò)誤,錯(cuò)誤信息保存在($errno, $errstr);后一個(gè)剛好相反,表示發(fā)起異步連接,這時(shí)底層connect()會(huì)立即返回并不會(huì)報(bào)錯(cuò)(此時(shí)$timeout參數(shù)沒(méi)啥用),所以之后一旦連接句柄異常,那么讀寫(xiě)數(shù)據(jù)照樣會(huì)報(bào)錯(cuò),讀寫(xiě)超時(shí)通過(guò)stream_socket_timeout()控制。
年代過(guò)于久遠(yuǎn),無(wú)法發(fā)表回答
??