swoole tick example

本文介绍如何使用 Swoole 在服务器与客户端间建立连接,并实现定时向客户端发送消息的功能。通过设置定时器,服务器可以每2秒向客户端发送一次特定的数据。

server:

$serv = new swoole_server('127.0.0.1', 9502);
$serv->on('receive', function ($serv, $fd, $from_id, $data) {
   $serv->tick(3000, function() use($serv, $fd) {
       $data = "tick-2000ms\n";
       $serv->send($fd, $data);
   });

});
$serv->start();

client:

$client = new Swoole_client(SWOOLE_SOCK_TCP,SWOOLE_SOCK_ASYNC);
$client->connect('127.0.0.1', 9502, 1);
    $cli->send('hehe');
});
$client->on("receive", function($cli, $data = ""){
   if(empty($data)){
       $cli->close();
       echo "closed\n";
   } else {
       echo "received: $data\n";
       sleep(1);
       
   }
});
$client->on("close", function($cli){
   echo "close\n";

});



本文转自 skinglzw 51CTO博客,原文链接:http://blog.51cto.com/skinglzw/1963961,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值