我写的这个对象线程安全么?
应用场景:我需要一个线程安全的Queue,而且最好提供强类型Queue支持(如:GenericQueue)
虽然Queue类提供了一个static 方法来返回一个线程安全的Queue,但不提供强类型支持。
我这样实现:竟然有人说这样有问题,我不解,望高手解惑!!呵呵
public class SyncQueue<T>:Queue<T>
{
public SyncQueue()
{
this._isSync = true;
this._syncRoot = new object();
}
public SyncQueue(int capacity)
: base(capacity)
{
this._isSync = true;
this._syncRoot = new object();
}
/// <summary>
/// 获取一个值,该值指示是否同步对 Queue 的访问(线程安全)。
/// </summary>
public virtual bool IsSynchronized
{
get { return this._isSync; }
}
/// <summary>
/// 获取可用于同步 Queue 访问的对象。
/// </summary>
public virtual Object SyncRoot
{
get { return this._syncRoot; }
}
private bool _isSync;
private object _syncRoot;