server:

$serv=newswoole_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=newSwoole_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";
});