异步套接字读取问题

本文关键字:问题 读取 套接字 异步 | 更新日期: 2023-09-27 18:19:42

我有一个程序,它使用tcp套接字异步调用来接收8字节的协议头。在处理ReadCallBack()[async回调]时,它使用同步读取来获取有效负载消息,然后对其进行处理

我的问题是ReadCallback方法是否是线程安全的。我正在使用普通的字典来处理这些负载。它对那个格言有任何影响吗?

异步套接字读取问题

如果一切都处于隔离状态,那么它实际上是线程安全的;重要的问题是:还有什么在发生?还有什么正在访问(读取或写入)词典?如果什么都没有,那么你应该很好-回调将被调用(这取决于所使用的特定API和缓冲区中可用的数据,可能是在发出Read...的线程上在完成端口线程上),然后你可能会在做其他事情(读/写/关闭)之前对字典做一些工作。

然而,如果其他线程正在访问字典,那么如果没有特定的代码,这个问题是不可能回答的。