C# 异步套接字读取问题

C# 异步套接字读取问题,c#,.net,sockets,C#,.net,Sockets,我有一个程序,它使用tcp套接字异步调用来接收8字节的协议头。在处理ReadCallBack()[async Callback]时,它使用同步读取来获取有效负载消息,然后对其进行处理 我的问题是ReadCallback方法是否是线程安全的。我正在使用普通字典来处理这些有效负载。它是否以任何方式影响dict?如果它处于隔离状态,则所有内容都是有效的线程安全的;重要的问题是:还发生了什么?还有什么是访问(读或写)字典?如果没有问题,那么您应该很好-将调用回调(这取决于所使用的特定API和缓冲区中可用

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


我的问题是ReadCallback方法是否是线程安全的。我正在使用普通字典来处理这些有效负载。它是否以任何方式影响dict?

如果它处于隔离状态,则所有内容都是有效的线程安全的;重要的问题是:还发生了什么?还有什么是访问(读或写)字典?如果没有问题,那么您应该很好-将调用回调(这取决于所使用的特定API和缓冲区中可用的数据,可以是发出
Read…
的线程上的,也可以是完成端口线程上的),然后你大概会在做其他事情(读/写/关)之前先用字典做一些工作

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