Функциональная оценка, отключенная, потому что предыдущая функциональная приведенная к таймауту оценка

У меня есть приложение C#, в котором я получаю эту ошибку:

"Функциональная оценка, отключенная, потому что предыдущая функциональная приведенная к таймауту оценка. Необходимо продолжить выполнение для перевключения функциональной оценки".

Я видел много сообщений, связанных с этой ошибкой на stackoverflow и на MSDN также, но не нашел решения. Большинство людей говорит, что эта ошибка прибывает в многопоточное приложение и может быть разрешена путем удаления всех точек останова. В моем случае мое приложение является отдельным, распараллелил, и я удалил все точки останова также, но тем не менее я получаю эту ошибку, когда я отлаживаю приложение. Когда я запускаю приложение. без отладки просто зависает мое приложение, и я должен остановить его через Visual Studio. Я пытался найти код, где его получение зависает, и я нашел строку, где это добирается, зависают. Вот фрагмент кода:

MatchCollection matchesFound = Regex.Matches(content, 
                                             keywordPattern,
                                             RegexOptions.Multiline);
int matchCount = matchesFound.Count;

Когда выполнение происходит во вторую строку, т.е. когда код пытается получить значение свойства Count, мое приложение добирается, зависают. Мое регулярное выражение прекрасно, поскольку я протестировал его в Экспрессе, и я уверен, что приложение не становится повешенным при выполнении Соответствий () метод. Если я приезжаю в ту строку путем отладки, я получаю вышеупомянутую ошибку. Кто-либо знает, почему эта ошибка прибывает и как разрешить его?

Я использую Visual Studio 2005.

20
задан Andreas Niedermair 15 February 2016 в 16:57
поделиться

1 ответ

Причины зависания и этого сообщения об ошибке, вероятно, одинаковы : есть что-то, что требует много времени для вычисления. И когда вы делаете это в коде, и в отладчике. Отладчик не обладает волшебной силой, чтобы вычислить что-то быстрее, чем ваше приложение.

Вы можете попробовать использовать Debug.WriteLine для вывода фактического содержимого и keywordPattern . Я думаю, вполне возможно, что оба они достаточно велики, чтобы продолжить работу.

8
ответ дан 30 November 2019 в 01:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: