Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个程序,它使用 tcp 套接字异步调用来接收 8 个字节的协议头。在处理 ReadCallBack() [异步回调] 时,它使用同步读取来获取有效负载消息然后对其进行处理。
我的问题是 ReadCallback 方法是否是线程安全的。我正在使用普通字典来处理这些有效负载。它会以任何方式影响那个字典吗?
如果它是孤立的,那么一切都是有效的线程安全的;重要的问题是:还发生了什么?还有什么正在访问(读取或写入)字典?如果什么都没有,那么你应该没问题 - 将调用回调(这取决于正在使用的特定 API,以及缓冲区中可用的数据,可能在发出的线程上,也可能在完成端口线程上),并且那么大概你会在做其他事情(读/写/关闭)之前对字典做一些工作。Read...
Read...
但是,如果其他线程正在访问字典,那么没有特定代码就无法回答这个问题。