Этот ключ уже связан с элементом этой коллекции - PullRequest
1 голос
/ 20 октября 2010

У меня есть следующий код:

If Not Application("ServicesQueueActiveDict").Exists( nID ) Then
 'we are good to process, this item is not Active....add it now
 Application("ServicesQueueActiveDict").Add nID, Now
Else
        'do whatever

"ServicesQueueActiveDict - это caprock.dictionary.

Я получаю сообщение об ошибке, упоминаемое в этой теме: «Этот ключ уже связан с элементом этой коллекции». когда ветвь If выполняется. Проблема в том, что если nID существует, то почему код пытается добавить его снова? Разве это не должно выполнить ветвь Else?

Между прочим, nID - это простое целое число.

1 Ответ

1 голос
/ 20 октября 2010

Есть ли здесь риск возникновения проблем с многопоточностью? В вашем коде нет блокировки, поэтому может быть другой поток между выполнением теста .Exists и попыткой добавления?

...