Sharepoint webpart многопоточность при отладке? - PullRequest
1 голос
/ 25 мая 2011

Я разработал веб-часть, которая демонстрирует странное поведение.Когда я загружаю страницу, на которой установлен, иногда она работает правильно, а иногда падает, но я не могу найти какой-либо шаблон (кажется мне случайным).

Когда я отлаживал его, я видел, что есть два потока выполнения,(Курсор отладки всегда проходит два раза по каждой функции в отдельных потоках).Как это может быть?

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

РЕДАКТИРОВАТЬ:

Добавлены два скриншота с отладкой

Added two screenshots with the debug

enter image description here

1 Ответ

0 голосов
/ 01 июня 2011

Это проблема с потоками и общими переменными, если вы не синхронизируете, вы никогда не узнаете, когда что-то рухнет.Прежде всего вы должны выяснить, почему вы получаете больше потоков, обращающихся к вашему коду. Если вы не можете «удалить» поведение, вам придется синхронизировать доступ ко всем переменным, которые совместно используются в вашем объекте, используя блокировки или некоторые другие механизмы синхронизации.(Будьте осторожны, чтобы при этом не возникало никаких тупиков).

Дело здесь в том.Если вы не можете заставить код выполняться в одном шаге, вам нужно синхронизировать доступ к переменным в объекте, чтобы не происходило сбоев.

...