Из MSDN:
Очередь <(Of <(T>)>) может поддерживать
несколько читателей одновременно, как долго
так как коллекция не изменена.
Несмотря на это, перечисляя через
коллекция изначально не
потокобезопасная процедура. Гарантировать
поток безопасности при перечислении, вы
может заблокировать коллекцию во время
полное перечисление. Чтобы позволить
Коллекция будет доступна нескольким
темы для чтения и письма, вы
должен реализовать свой собственный
синхронизации.
Вы должны убедиться, что ни один читатель не активен, пока элемент находится в очереди (блокировка, вероятно, хорошая идея).
Глядя на счетчик в отражателе, можно увидеть чтение из частного поля. Это может быть хорошо в зависимости от того, что вы делаете со значением. Это означает, что вы не должны делать такие вещи (без надлежащей блокировки):
if(queue.Count > 0)
queue.Dequeue();