2011-04-17 90 views

回答

4

内部BufferManager.CreateBufferManager返回WrappingBufferManager一个实例,其采用无形式并发控制的,但包裹其采用内部锁定时Take()荷兰国际集团的新缓冲区的SynchronizedPool<T>多个实例。因此,根据WrappingBufferManager的简单性判断,假设您的部分上的任何锁定都是多余的,并且返回的类实际上是线程安全的是安全的。

0

我遇到了BufferManager的线程问题。我在WCF中创建了一个自定义消息编码器,根据我的观察,并不总能保证为每个调用创建缓冲区管理器。因此,字节被其他线程重复使用/返回,从而破坏了我的数据。

所以,要回答你的问题...不,他们是不是。由于您正在重复使用相同的实例,因此不保证thread-safe