實例三、直接使用TCP傳輸數(shù)據(jù)
創(chuàng)建tcp_test.php
<?php
use Workerman\Worker;
require_once './Workerman/Autoloader.php';
// 創(chuàng)建一個Worker監(jiān)聽2347端口,不使用任何應(yīng)用層協(xié)議
$tcp_worker = new Worker("tcp://0.0.0.0:2347");
// 啟動4個進(jìn)程對外提供服務(wù)
$tcp_worker->count = 4;
// 當(dāng)客戶端發(fā)來數(shù)據(jù)時
$tcp_worker->onMessage = function($connection, $data)
{
// 向客戶端發(fā)送hello $data
$connection->send('hello ' . $data);
};
// 運行worker
Worker::runAll();
服務(wù)端用的這個例子
c寫的一個小例子
int main(int argc,char** argv){
int client_sockfd;
int len;
struct sockaddr_in remote_addr;
char buf;
memset(&remote_addr,0,sizeof(remote_addr));
remote_addr.sin_family=AF_INET;//ip
remote_addr.sin_addr.s_addr=inet_addr("120.24.36.177");
remote_addr.sin_port=htons(2347);
if(client_sockfd=socket(AF_INET,SOCK_STREAM,0)<0){
ALOGD("socket creat err\n");
return -1;
}
if(connect(client_sockfd,(struct sockaddr *)&remote_addr,sizeof(struct sockaddr))==-1){
ALOGD("socket connect err\n");
return -1;
}
connect時就錯誤了
但是用telnet 120.24.36.177 2347 是可以正常通信的
請問下為什么連不上了,有誰能提供個用c寫的demo嗎?