libevent實現服務端客戶端的回顯功能

2021-08-03 03:11:22 字數 1914 閱讀 2498

這個demo如果需要改進可以提出建議

server

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;

#define server_ip "192.168.5.227"

#define server_port 9090

#define buf_size 1024

void bufferent_event_ok(struct bufferevent *bev, void *arg)

std::cout<<"get buf==="<(arg);

evutil_socket_t fd;

struct sockaddr_in sin;

socklen_t slen = sizeof(sin);

/* accept之後 水平觸發 消失*/

fd = accept(sock, (struct sockaddr *) &sin, &slen);

if (-1 == fd)

struct sockaddr_in remote_addr; //伺服器端網路位址結構體

memset(&remote_addr, 0, sizeof(remote_addr)); //資料初始化--清零

remote_addr.sin_family = af_inet; //設定為ip通訊

remote_addr.sin_addr.s_addr = inet_addr(ip); //伺服器ip位址

remote_addr.sin_port = htons(port); //伺服器端口號

int con_result = connect(fd, (struct sockaddr*) &remote_addr,

sizeof(struct sockaddr));

if (con_result < 0)

cout << "con_result=" << con_result << endl;

return fd;

}void bufferent_event_ok(struct bufferevent *bev, void *arg)

std::cout<<"get buf==="<> ip;

cout << "please input port:" << endl;

int port;

cin >> port;

cout << "serverip is " << ip << " ,port=" << port << endl;

int socket_fd = connectserver(ip, port);

cout << "socket_fd=" << socket_fd << endl;

init_read_event_thread(socket_fd);

//--------------------------

char buffer[buf_size];

bool isbreak = false;

while (!isbreak)

cout << "your input is " << buffer << endl;

int write_num = write(socket_fd, buffer, strlen(buffer));

cout << write_num << " characters written" << endl;

} cout << "main finished" << endl;

return 0;

}

Python UDP客戶端 服務端

udpclient.py coding utf 8 from socket import servername 127.0.0.1 伺服器位址,本例中使用一台遠端主機 serverport 12000 伺服器指定的埠 clientsocket socket af inet,sock dgram 建立...

python udp客戶端,服務端

客戶端1 建立套接字 2 收發資料 3 關閉套接字 import socket 建立套接字 socket socket.socket socket.af inet,socket.sock dgram 傳送資料 傳送資料的型別必須是位元組型別 data 你猜 encode gbk addr 192.1...

udp服務端 客戶端

個數 2的16次方 埠是資料發出或接收的入口 埠的目的 通過埠號找到對應的程序,完成資料的通訊 著名埠0 1023 這是建立了乙個基於udp協議的服務端 import socket todo 1.0 建立了乙個套接字,用來連線客戶端,傳送與接收資料 udp server socket.socket ...