Dictionary add causes an exception when the index is out of range.

Source: Internet
Author: User

In the case of high concurrency, the index in the dictionary add operation is out of the range.

If the lock is a class field, it is not static. The locks between multiple requests are not the same.

Solution,
First, change to static locks.
Second, change "Dictionary" to "concurrentdictionary.

The second solution is recommended.

If some data is loaded for the first time, the lock/unlock model can be used.

After testing, 1000 threads on my machine add item at the same time. dictionary threw indexoutofrange in more than a dozen seconds! Concurrentdictionary performs well and can always stick to outofmemoery.

Make sure to cache data using dictionaries in IIS.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.