Android上利用epoll机制实现手机服务器?

Android手机上运行C++服务器程序:使用epoll实现TCP通信
这篇博客分享了一段C++代码,展示了如何创建一个监听8888端口的TCP服务器,并使用epoll进行事件驱动。代码能在Android设备上运行,需要注意将监听IP设为手机实际IP。通过telnet可以测试连接,服务器能读取并回显接收到的数据。博客还提到了Android Studio的CMake编译系统和相关配置。

废话不多数。先上代码。server.cpp

#include <jni.h>
#include <string>
#include <cmath>
#include <sys/epoll.h>
#include <iostream>
#include <sys/socket.h>
#include <sys/epoll.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdio.h>
#include <errno.h>
#include "android/log.h"
#include "jni.h"
#include <pthread.h>

struct epoll_event ev, events[20];
#define LISTENQ 20
#define MAXLINE 5

int main(int argc, char *argv[]) {
   
   
    int i, maxi, listenfd, connfd, sockfd, myepfd, nfds, portnumber;
    ssize_t n;
    char line[MAXLINE];
    socklen_t clilen;
    myepfd = epoll_create(58);
    portnumber = 8888;
    struct sockaddr_in clientaddr;
    struct sockaddr_in serveraddr;
    listenfd = socket(AF_INET, SOCK_STREAM, 0);
    std::cout << "文件描述符为" + std::to_string(listenfd) << std::endl;
    if (listenfd < 0) {
   
   
        std::cout << 
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值