陕西队西北狼

ConcurrentQueue<T> TryDequeue Method

ConcurrentQueue<T>  类中的出队列方法:

1.TryDequeue (out T result)

MSDN:Tries to remove and return the object at the beginning of the concurrent queue.

该方法用于在并发队列的开始时移除和返回队列中的对象。

代码

public bool TryDequeue(
	out T result
)

 

移除对象元素成功,返回true,否则返回false。

result 为从队列中出队的对象。

 

注意,MSDN上说如果当时使用入队的方式,压入三个对象 a,b,c,当有两个线程去访问这个方法TryDequeue让对象a,b,c依次进行出队列,

那么假设线程1让a 出队,线程2让b出队,之后线程1又让c出队,因为有三个对象在队列中,所以该方法都能返回true,但是线程2并不会阻塞,

依然会继续执行TryDequeue方法进行出队列操作,然而队列已经为空,故此时方法将会返回false.

  

posted @ 2015-08-25 21:22  PS-Jerry  阅读(1619)  评论(0编辑  收藏  举报