社区
C++ 语言
帖子详情
Boost asio 是否支持多线程异步读写?
vvqboy
2015-08-04 02:54:47
我看大多示例, 都是这样的模型
读socket - > 写socket -> 继续调用 读socket 实现循环
这样做, 对立马能返回结果的情况没问题.
可我目前遇到的问题, 是客户端每次会有大量请求, 而每次请求都需要8- 10秒后才能给出回应.
这就需要我使用这样的模型:
一个线程不停接受来自客户端的请求
一个线程不能发送请求结果
而这两个线程都是操作同一个socket
这样做是否会有问题呢?
...全文
258
2
打赏
收藏
Boost asio 是否支持多线程异步读写?
我看大多示例, 都是这样的模型 读socket - > 写socket -> 继续调用 读socket 实现循环 这样做, 对立马能返回结果的情况没问题. 可我目前遇到的问题, 是客户端每次会有大量请求, 而每次请求都需要8- 10秒后才能给出回应. 这就需要我使用这样的模型: 一个线程不停接受来自客户端的请求 一个线程不能发送请求结果 而这两个线程都是操作同一个socket 这样做是否会有问题呢?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
LubinLew
2015-08-04
打赏
举报
回复
accept每次返回的socket文件描述符都是不同的, 你应该用接受线程保存一个描述符队列, 发送线程通过这个队列中描述符向外发送,注意队列操作的互斥。 你的这种方法是不好的,你可以改成接收一个请求就创建一个线程,把描述符传递给线程入口。 更多的方法你可以看看《UNIX网络编程》 下面是一个异步IO的简介你可以参考一下 http://www.wangafu.net/~nickm/libevent-book/01_intro.html
jiqiang01234
2015-08-04
打赏
举报
回复
socket本来就支持同时异步读写,无论什么形式封装的库都肯定支持
c++
boost
asio
网络库
异步
tcp方式文件传输 速度在10M左右.zip
c++
boost
asio
网络库
异步
tcp方式传文件 速度在10M左右.zip
Boost
.
Asio
C++ 网络编程 中文版
Boost
.
Asio
C++ 网络编程 PDF 高清 非扫描 中文版
Boost
ASIO
C++ 网络编程
Boost
ASIO
C++ 网络编程 中文完整版,附全书源代码!
boost
asio
最新版
boost
asio
最新版
基于
boost
.
asio
库的C++http/https web server
该c++ web server基于
boost
.
asio
库编写,同时
支持
http和https协议。该工程基于vs2015编译通过,相关配置和说明见readme.txt
C++ 语言
65,187
社区成员
250,526
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章