定義了兩個(gè)定時(shí)器,根據(jù)來(lái)源的不同,發(fā)送不同的數(shù)據(jù),現(xiàn)在如果單獨(dú)訪問(wèn)沒有問(wèn)題,我在兩個(gè)瀏覽器,同時(shí)訪問(wèn)兩個(gè)數(shù)據(jù),一個(gè)不動(dòng),另一個(gè)刷新幾次,這兩個(gè)端接收都是同一個(gè)數(shù)據(jù)了,
我想實(shí)現(xiàn)的是客戶端只有第一次訪問(wèn)的時(shí)候,會(huì)發(fā)送數(shù)據(jù)過(guò)來(lái),發(fā)送后,就一直是服務(wù)端定時(shí)推送數(shù)據(jù)給這個(gè)客戶端
[attach]2232[/attach]
?
針對(duì)連接的對(duì)象是$connection啊,$connection->cmd = 'xxxx'; $connection->params = 'xxxx'; 。
?
還有,在onClose的時(shí)候要把對(duì)應(yīng)連接的定時(shí)器也刪除,不然你的定時(shí)器數(shù)量是無(wú)限增長(zhǎng),假設(shè)有1萬(wàn)個(gè)定時(shí)器每秒跑一次,你的業(yè)務(wù)基本就掛了。
?一個(gè)定時(shí)器也可以啊。你可以設(shè)置一個(gè)定時(shí)器,然后
foreach($worker->connections as $connection){
? ? switch ($connection->cmd) {
? ? ? ? $connection->sned(...);
? ? }
}
遍歷所有連接 判斷$connection->cmd = 'xxxx'; $connection->params = 'xxxx'; 并生成數(shù)據(jù)發(fā)送