Почему между началом PrerenderComplete и End PrerenderComplete событий имеет большой разрыв между PremenderComplete и End PrerenderComplete событиями?
-
25-09-2019 - |
Вопрос
Я хотел бы знать, что может привести к тому, что это неравенство между началом и конечными событиями PrerenderComplete или то, как я могу пойти на место нахождения узкого места.
aspx.page End PreRender 0.193179639923915 0.001543
aspx.page Begin PreRenderComplete 0.193206263076064 0.000027
aspx.page End PreRenderComplete 1.96926008935549 1.776054
aspx.page Begin SaveState 2.13108461902679 0.161825
РЕДАКТИРОВАТЬ
Вот еще несколько подробно о трассировке, который был создан
aspx.page Begin PreRenderComplete 0.200593573416824 0.000028
PR-S 0.200606270612464 0.000013
PR-complete 0.200622654090709 0.000016
PR-E 1.97799207367323 1.777369
aspx.page End PreRenderComplete 1.97805105419491 0.000059
aspx.page Begin SaveState 2.11171607104531 0.133665
Код позади:
Private Sub _Default6_PreRenderComplete(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRenderComplete
Trace.Write("PR-complete")
End Sub
Protected Overrides Sub OnPreRenderComplete(ByVal e As System.EventArgs)
Trace.Write("PR-S")
MyBase.OnPreRenderComplete(e)
Trace.Write("PR-E")
End Sub
Я не уверен, как еще проследить, что может работать на полное событие предварительного оказания. Есть ли какой-либо другой тип элементов управления или функций, которые работают в этой точке на странице Lifecycle?
Больше информации
Часть этой задержки, по-видимому, связана с управлением AJAX на странице. Я не уверен, почему они вызывают такой большой разрыв в времени нагрузки, но ясно, что они есть.
Решение
Я должен выбрасывать пробовный и истинный ответ. Профиль профиля. Это должно дать вам всю информацию, которую вам нужно увидеть, когда процесс заблокирован.
Другие советы
У вас, вероятно, есть обработчик событий, прикрепленный к PreRenderComplete
событие, которое занимает много времени. Я бы начал с поиска вашего кода для ссылок на PreRenderComplete
и идти оттуда.