2013-06-24 76 views
-1

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

我的问题是ReadCallback方法是否线程安全。我正在使用正常字典来处理这些有效载荷。这是否会影响该字典?

回答

1

如果隔离,一切都是有效的线程安全;重要的问题是:什么其他正在进行?什么其他正在访问(读或写)字典?如果没有,那么你应该没问题 - 回调将被调用(取决于正在使用的特定API以及缓冲区中可用的数据,可能是或者在发布Read...,的线程上完成 - 端口线程),然后大概你会在做别的事情之前做一些工作(读/写/关闭)。

但是,如果其他线程正在访问字典,则无法在没有特定代码的情况下回答问题。