社区
网络编程
帖子详情
要想实现socket异步通信只能//俩个线程一个write,一个read?
mirroatl194
2014-01-18 02:00:59
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
...全文
204
4
打赏
收藏
要想实现socket异步通信只能//俩个线程一个write,一个read?
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
encoderlee
2014-01-18
打赏
举报
回复
同步阻塞式套接字才需要一个线程send一个线程recv。 因为线程在send上阻塞时无法去recv。
Eleven
2014-01-18
打赏
举报
回复
采用非阻塞IO模型即可。
见习学术士
2014-01-18
打赏
举报
回复
或者你可以使用完成端口来处理
masterz
2014-01-18
打赏
举报
回复
不需要2个线程,看看
Basic Winsock Examples: Asynchronous I/O Client
http://www.win32developer.com/tutorial/winsock/winsock_tutorial_7.shtm
socket
的异步通讯机制
前言: 在网络
socket
编程中,开发着常常没有异步通讯的经验,客户端发完数据就阻塞等待,或者开启
一个
进程或
线程
来专门处理 通讯问题。很少有人能写出
一个
异步通讯的优雅流程,从而适应当前大规模平行计算的要求。我
想
就这个问题以FTP为例和大家分享一下。 问题: FTP 是
一个
建立在TCP/IP之上,在客户端和服务器之间用于文件传输的标准协议。要
实现
一个
完整的客户端文件下载过程,一般有三个步骤: 通过三次握手建立TCP的控制信道,然后发送用户名和密码,通过用户认证;还需要指定下载文件的模式和接收建立数据信道传输
基于TCP的多
线程
异步
socket
通信
基于TCP的多
线程
异步
socket
通信 1、服务端使用
socket
流程: 1)加载套接字库:WSAStartup (后面要给出具体函数的说明) //加载套接字库 WORD wVersionRequested; WSADATA wsaData; int err; wVersionRequested = MAKEWORD(2, 2); //表示调用版本2.2 wVersionRequested结...
socket
编程之
read
/
write
一.
read
/
write
的语义:为什么会阻塞? 先从
write
说起: #include ssize_t
write
(int fd, const void *buf, size_t count); 首先,
write
成功返回,只是buf中的数据被复制到了kernel中的TCP发送缓冲区。至于数据什么时候被发往网络,什么时候被对方主机接收,什么时候被对方进程读取,系统调用层面不会
C++多
线程
异步通信
Windows
Socket
s 2新增的函数列在下表中: WSAAccept() accept()函数的扩展版本,它支持条件接收和套接口分组。 WSACloseEvent() 释放
一个
事件对象。 WSAConnect() connect()函数的扩展版本,它支持连接数据交换和QOS规范。 WSACreateEvent() 创建
一个
事件对象。 WSADuplicate
Socket
()
socket
之 IO复用,AIO,BIO,NIO,同步,异步,阻塞和非阻塞区别(一)
一、什么是
socket
?什么是I/O操作? 我们都知道unix(like)世界里,一切皆文件,而文件是什么呢?文件就是一串二进制流而已,不管
socket
,还是FIFO、管道、终端,对我们来说,一切都是文件,一切都是流。在信息 交换的过程中,我们都是对这些流进行数据的收发操作,简称为I/O操作(input and output),往流中读出数据,系统调用
read
,写入数据,系统调用
write
。不...
网络编程
18,363
社区成员
64,187
社区内容
发帖
与我相关
我的任务
网络编程
VC/MFC 网络编程
复制链接
扫一扫
分享
社区描述
VC/MFC 网络编程
c++
c语言
开发语言
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章