# socket_select
* * * * *
說明:
>在指定的超時時間內,運行select()系統調用數組參數內的套接字,用于確定一個或多個套接字的狀態,對每一個套接字,調用者可查詢它的可讀性、可寫性及錯誤狀態信息
語法:
~~~
int socket_select ( array &$read , array &$write , array &$except , int $tv_sec [, int $tv_usec = 0 ] )
~~~
參數:
| 參數 | 描述 |
| --- | --- |
| read | 指向一組等待可讀性檢查的套接字|
| write | 指向一組等待可寫性檢查的套接字|
| except | 指向一組等待錯誤檢查的套接字|
| tv_sec | 用來設置select()的等待時間,秒|
| tv_usec兩者組成了 | 用來設置select()的等待時間,微妙|
1. tv_sec和tv_usec兩者構成超時參數,tv_sec為0,socket_select()立即返回,此時可認為是是非阻塞的,這種情況適用于輪詢
2. 如果 tv_sec是 NULL,socket_select()將一直阻塞到有一個套接字滿足條件
返回值:
| 成功 | 失敗 |
| --- | --- |
| 返回滿足條件的套接字的數目 | false |
技術細節:
PHP版本:PHP 4 >= 4.2.0, PHP 5, PHP 7
實例:
~~~
~~~
資料來源:
http://php.net/manual/zh/function.socket-select.php
http://blog.csdn.net/im_kk/article/details/45033533
http://blog.csdn.net/gooer/article/details/3951135
http://blog.csdn.net/wypblog/article/details/6826286
- 前言
- 函數參考
- Socket 函數
- socket_accept
- socket_bind
- socket_clear_error
- socket_close
- socket_connect
- socket_create_listen
- socket_create_pair
- socket_create
- socket_getpeername
- socket_getsockname
- socket_last_error
- socket_listen
- socket_read
- socket_recv
- socket_select
- socket_send
- socket_set_block
- socket_set_nonblock
- SplQueue
- 魔術方法
- 魔術常量
- 雜項
- backlog的用處
- new self()和new static()的區別
- PHP變量的生命周期
- PHP抽象類
- 對象接口
- PHP中的常用關鍵字
- 常量
- 內存泄露
- global 與 $GLOBAL
- 簡單說明CGI和動態請求是什么
- 設計模式
- 單例模式
- 工廠模式
- 適配器模式
- 策略模式
- 觀察者模式
- 控制反轉IoC簡介
- session
- use_trans_sid
- auto_start
- session_id
- cookie_secure
- 面試
- 數據庫相關
- 語句相關
- 索引相關
- 字段相關
- PHP相關
- 字符串相關
- 函數相關
- 運算符優先級相關
- 錯誤相關
- redis相關
- 10個常見的Redis面試"刁難"問題
- mysql
- MySQL中的鎖
- MySQL存儲引擎MyISAM 和 InnoDB的區別
- MySQL半同步復制
- explain 命令詳解
- 索引
- 數據庫事務
- MySQL和B樹的那些事
- git
- github----向開源框架提交pr的過程
- 推薦博客
- linux
- 命令
- free
- 高并發
- 搶購/秒殺功能
- 算法
- 一致性Hash算法