как т o получить доступ к базовой параллельной очереди по умолчанию для коллекции блокировки

У меня несколько производителей и один потребитель. Однако, если в очереди есть что-то, что еще не потреблено, производитель не должен снова ставить это в очередь. (уникально отсутствие дубликатов, блокирующих коллекцию, которая использует параллельная очередь по умолчанию)

if (!myBlockingColl.Contains(item))
    myBlockingColl.Add(item)

Однако блокирующий столбец не имеет метода contains и не предоставляет никаких методов, подобных trypeek (). Как мне получить доступ к базовой параллельной очереди, чтобы я мог сделать что-то вроде

if (!myBlockingColl.myConcurQ.trypeek(item)
  myBlockingColl.Add(item)

В вращение хвоста. Пожалуйста, помогите. спасибо

6
задан Gullu 6 July 2011 в 22:48
поделиться