我有以下代码:
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是一个简单的整数。
答案 0 :(得分:1)
此处存在线程问题的风险吗?您的代码没有显示任何锁定,因此在执行.Exists测试和添加尝试之间可能会出现另一个线程吗?