لماذا توجد فجوة كبيرة بين أحداث Begin PrerenderComplete و 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
لست متأكدًا من كيفية تتبع ما قد يعمل في الحدث الكامل قبل المسار. هل هناك أي نوع آخر من عناصر التحكم أو الفانكات التي تعمل في هذه المرحلة في دورة حياة الصفحة؟
مزيد من المعلومات
يبدو أن جزءًا من هذا التأخير يرتبط بوجود عناصر تحكم Ajax على الصفحة. لست متأكدًا من سبب تسببهم في مثل هذه الفجوة الكبيرة في وقت الحمل ولكن من الواضح أنهم كذلك.
المحلول
لا بد لي من رمي الجواب المجربة والحقيقية. ملف تعريف الملف الشخصي. يجب أن يمنحك ذلك جميع المعلومات التي تحتاجها لمعرفة أين يتم قفل العملية.
نصائح أخرى
ربما يكون لديك معالج حدث متصل بـ PreRenderComplete
الحدث الذي يستغرق وقتا طويلا. سأبدأ بالبحث عن الكود الخاص بك للحصول على مراجع إلى PreRenderComplete
والذهاب من هناك.