我有一个试图阅读的客户端/服务器应用程序。从客户端读取时,它是异步完成的。似乎客户端的async_read失败了。
我认为我的客户端在服务器执行相应的async_write之前尝试async_read(不完全确定)。所以我的问题是概念性的:
非常感谢你。我很感激3个问题的确认,因为我已经尝试了很多东西,我没有时间尝试进一步的实验。
答案 0 :(得分:0)
- 我可以在相应的async_write到服务器端的套接字之前执行async_read吗?
醇>
是
- 我不确定(现在不能尝试),但似乎那种套接字(阻塞/非阻塞)改变了1的行为。
醇>
很可能,但你不应该把套接字置于非阻塞模式。异步I / O是第三种I / O模型,与非阻塞模式无关。
- 如果我想使用非阻塞套接字,当我知道有可用数据时,我怎么能async_read?
醇>
这是一个矛盾。异步I / O启动操作并在完成时提供集合。操作本身仍然阻塞,但不是异步调用者。如果要使用非阻塞套接字,则不应尝试使用异步I / O.