رسم بياني مفصَّل
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
تقدّم علامة التبويب مخطط اللهب مخطط مكالمات معكوسًا يجمع حِزم المكالمات المتطابقة. وهذا يعني أنّه يتم جمع الطرق أو الدوال المتطابقة التي تتشارك في تسلسل المتصلين نفسه وتمثيلها كشريط واحد أطول في مخطط شعلة (بدلاً من عرضها كأشرطة متعددة أقصر، كما هو موضّح في مخطط المكالمات). يسهّل ذلك معرفة الطرق أو الدوال التي تستغرق أكبر وقت. ومع ذلك، يعني هذا أيضًا أنّ المحور الأفقي لا يمثّل
مخططًا زمنيًا، بل يشير إلى مقدار الوقت النسبي الذي يستغرقه كل أسلوب أو
دالة للتنفيذ.
للمساعدة في توضيح هذا المفهوم، اطّلِع على الرسم البياني للمكالمات في الشكل 1. يُرجى العِلم أنّ الطريقة D تجري عدة طلبات إلى B (B1 وB2 وB3)، وبعض هذه الطلبات إلى B تجري طلبًا إلى C (C1 وC3).
الشكل 1. رسم بياني للمكالمات يتضمّن مكالمات طرق متعددة
تتشارك تسلسلاً مشتركًا من المتصلين.
بما أنّ B1 وB2 وB3 تشترك في التسلسل نفسه من المتصلين (أ → د → ب)، يتم تجميعها، كما هو موضّح في الشكل 2. وبالمثل، يتم تجميع C1 وC3 لأنّهما يشتركان في تسلسل المتصلين نفسه (أ → د → ب → ج)، علمًا بأنّه لا يتم تضمين C2 لأنّ لديه تسلسل متصلين مختلفًا (أ → د → ج).
الشكل 2. تجميع الطرق المتطابقة التي تتشارك حزمة استدعاءات نفسها
يتم استخدام المكالمات المجمّعة لإنشاء الرسم البياني الشعلة، كما هو موضّح في الشكل 3.
يُرجى العِلم أنّه بالنسبة إلى أي عملية استدعاء في الرسم البياني الشعلة، تظهر أولاً عمليات الاستدعاء التي تستهلك أكبر قدر من وقت وحدة المعالجة المركزية.
الشكل 3. تمثيل الرسم البياني الخاص بالدالة على شكل مخطط لهب، كما هو موضّح في الشكل 5.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Flame chart\n\nThe **Flame Chart** tab provides an inverted call chart that aggregates\nidentical call stacks. That is, identical methods or functions that share the\nsame sequence of callers are collected and represented as one longer bar in a\nflame chart (rather than displaying them as multiple shorter bars, as shown in a\ncall chart). This makes it easier to see which methods or functions consume the\nmost time. However, this also means that the horizontal axis doesn't represent a\ntimeline; instead, it indicates the relative amount of time each method or\nfunction takes to execute.\n\nTo help illustrate this concept, consider the call chart in Figure 1. Note\nthat method D makes multiple calls to B (B~1~, B~2~, and\nB~3~), and some of those calls to B make a call to C (C~1~ and\nC~3~).\n\n\n**Figure 1.** A call chart with multiple method calls\nthat share a common sequence of callers.\n\n\u003cbr /\u003e\n\nBecause B~1~, B~2~, and B~3~ share the same sequence\nof callers (A → D → B) they are aggregated, as shown in Figure 2. Similarly,\nC~1~ and C~3~ are aggregated because they share the same\nsequence of callers (A → D → B → C); note that C~2~ is not included\nbecause it has a different sequence of callers (A → D → C).\n\n\n**Figure 2.** Aggregating identical methods that share\nthe same call stack.\n\n\u003cbr /\u003e\n\nThe aggregated calls are used to create the flame chart, as shown in Figure 3.\nNote that, for any given call in a flame chart, the callees that consume the\nmost CPU time appear first.\n\n\n**Figure 3.** A flame chart representation of the call\nchart shown in figure 5.\n\n\u003cbr /\u003e"]]