首页 > 解决方案 > 立即发送到 TCP 套接字 bufferevent_write bufferevent libevent

问题描述

我有应用程序每 5 分钟间隔 5 秒发送数据事件 10 条消息,缓冲区大小可以为 10KB。它的非阻塞连接。出于这个原因,我使用了 bufferevent。但我无法达到同样的效果。所有 10 条消息都聚集在一起。

客户 :


void fnTimeExpired(evutil_socket_t listener, short event, void *arg)
{
    char buffer[iMesssageSize + 10];
    memset(buffer, 'A', sizeof(buffer));
    cout << "fnTimeExpired" << endl;
    char Buffer[100];
    uint64_t exp;
    read(iTimerFd, &exp, sizeof(uint64_t));

    for (int iCount = 0; iCount < iNoOfMessage; iCount++)
    {
        bufferevent_write(bev, buffer, iMesssageSize);
        bufferevent_flush(bev, EV_WRITE, BEV_FLUSH);
        sleep(5);
    }
}

标签: cc++17libevent

解决方案


推荐阅读