Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Ez a cikk a Concurrency Visualizer Szálak nézetében található jelentésekről nyújt tájékoztatást.
Blokkolási időprofil-jelentés
A profiljelentések összesített blokkolási időadatokat biztosítanak az egyes blokkolási kategóriákhoz (például "I/O" vagy "Szinkronizálás") tartozó hívásveremekhez. A preempciós jelentés felsorolja azokat a folyamatokat, amelyek megszakították az aktuális folyamatot, és ezek előfordulásának számát is feltünteti. A blokkoló profil jelentésének létrehozásához az eszköz összegyűjti a blokkoló API-hívásokat, és a hívásveremek fájába gyűjti őket. Az ezekben a jelentésekben megjelenített adatok az aktuális időtartománytól, a rejtett szálaktól és az alábbi két szűrőtől függően változnak:
Ha a Csak saját kód beállítás van kiválasztva, csak a felhasználói kóddal rendelkező veremkeretek jelennek meg, valamint egy szint a felhasználói kódréteg alatt.
Ha a zajcsökkentési érték be van állítva, a rendszer kihagyja azokat a csoportosított halmokat, amelyek kisebbek a megadott gyakoriságnál.
Bontsa ki a hívásfa-bejegyzéseket annak a kódsornak a megkereséséhez, amelyben a blokkolási idő el van töltve. A bejegyzés forrásának megtekintéséhez válassza a helyi menüben a Forrás megtekintése lehetőséget. A jelenlegi kódsort meghívó kódsor megkereséséhez a helyi menüben válassza a Hívási helyek megtekintése lehetőséget. Ha csak egy hívási hely érhető el, a parancs a híváshely kiemelt kódsorához csatlakozik. Ha több híváswebhely is elérhető, a parancs megnyit egy párbeszédpanelt, amelyben kijelölhet egy bejegyzést, majd az Ugrás a forrásra gombra kattintva megkeresheti a kiemelt híváswebhelyet. A legtöbb példányt, legtöbb időt vagy mindkettőt tartalmazó híváswebhely forráskódjának megtekintése gyakran hasznos.
Időjelentés oszlopainak blokkolása
Az alábbi táblázat az egyes blokkolási időjelentések oszlopait mutatja be.
| Oszlop név | Description |
|---|---|
| Név | A hívásverem egyes szintjeihez tartozó függvény neve. |
| Példányok | A blokkoló hívás példányainak száma a látható időszakra vonatkozóan. |
| Összesítő blokkolási idő | A hívásveremfa ezen szintjére összeadódó összes blokkolási idő az összes veremre vonatkozóan. Az összesített szám a függvény kizárólagos blokkolási idejének és az összes gyermekcsomópont kizárólagos blokkolási idejének az összege. |
| Kizárólagos blokkolási idő | Az a teljes blokkolási idő, amely alatt ez a függvény a hívásverem legalacsonyabb szintje. Az egyedi hívásverembejegyzés, amely magas kizárólagos blokkolási idővel rendelkezik, érdekes függvény lehet. |
| API/Várakozás kategória | Csak a hívásverem legalacsonyabb szintjén lévő függvények esetén jelenik meg. Ha a blokkoló hívás aláírása felismerhető, a blokkoló API neve meg lesz adva. Ha az aláírás nem ismerhető fel, a rendszer a kernel által jelentett információkat adja meg. |
| Részletek | A függvény teljesen kvalifikált neve. Ez magában foglalja a sorok számát, ha elérhető. |
Synchronization
A szinkronizálási jelentés azokat a hívásokat jeleníti meg, amelyek a szinkronizálást blokkoló szegmensekért felelősek, valamint az egyes hívásveremek összesített blokkolási idejét. További információ: Szinkronizálási idő.
Alszik
Az Alvó állapot jelentés az alvással töltött idő blokkolásáért felelős hívásokat, valamint az egyes hívásveremek összesített blokkolási idejét jeleníti meg. További információ: Alvási idő.
I/O
Az I/O-jelentés az I/O-n blokkoló szegmensekért felelős hívásokat, valamint az egyes hívásveremek összesített blokkolási idejét jeleníti meg. További információ: I/O idő (szálak nézete).
Memóriakezelés
A Memóriakezelési jelentés azokat a hívásokat jeleníti meg, amelyek a memóriakezelési műveletek blokkolásáért felelős szegmensekért felelősek, valamint az egyes hívásveremek összesített blokkolási idejét. További információ: Memóriakezelési idő.
Kisajátítás
A Preemption jelentés felsorolja a jelenlegi folyamatot megszakító folyamatokat az előfordulások számával együtt. Az egyes folyamatok kibontásával megtekintheti azokat a szálakat, amelyek helyettesítették az aktív folyamat szálait, valamint megtekintheti a szálankénti kiszorítások részletezését. Ez a blokkoló jelentés kevésbé használható, mint a többi, mivel a preempciót általában az operációs rendszer szabja meg a folyamatra, nem pedig a kódban lévő probléma. További információ: Preemption time.
Felhasználói felület feldolgozása
A felhasználói felület feldolgozási jelentése azokat a hívásokat jeleníti meg, amelyek a felhasználói felület feldolgozási blokkjait blokkoló szegmensek blokkolásáért felelősek, valamint az egyes hívásveremek összesített blokkolási idejét. További információkért lásd a felhasználói felület feldolgozási idejét.
Lemezműveleti jelentés (Szálnézet)
A Lemezműveleti jelentés a lemezcsatornák lemez I/O-műveleteit jeleníti meg.
Minden olyan lemezhozzáférés esetében, amely a jelenleg látható időablakban profilozott folyamat nevében történik, a rendszer a következő információkat jelenti:
A lemezhozzáférést végrehajtó folyamat neve és PID-címe
A lemezhez hozzáférő szál azonosítója
A megnyitott fájl neve
Az olvasások száma fájlonként
Az olvasási bájtok száma
Az olvasási késés ezredmásodpercben
Az írások száma
A megírt bájtok száma
Az írási késés ezredmásodpercben
Végrehajtási profil jelentése
A végrehajtási profil jelentése egy hagyományos mintavételezési profil. Körülbelül minden ezredmásodpercben vesznek mintát, amikor egy szál egy logikai magon fut, és a Concurrency Visualizer tipikus hívásfát hoz létre az összegyűjtött mintaveremek halmazából. A táblázat adataira hatással lehetnek az aktuális időtartomány és a rejtett szálak, valamint az alábbi szűrők, amelyek alkalmazhatók:
Ha a Csak saját kód beállítás van kiválasztva, csak a felhasználói kóddal rendelkező veremkeretek jelennek meg, valamint egy szinttel a felhasználói kód alatt.
Ha a zajcsökkentési érték be van állítva, a rendszer kiszűri a jelentésből azokat a csoportosított halmokat, amelyek kisebbek a megadott gyakoriságnál
Az alábbi táblázat a jelentés oszlopait mutatja be.
| oszlop | Description |
|---|---|
| Név | A hívásverem egyes szintjeihez tartozó függvény neve. |
| Mintavételi példák | Az összes minta teljes száma, amelyet az összes halmazhoz gyűjtenek, amelyek a hívásveremfa ezen szintjére felgördülnek. Az összesített szám a függvény mintaelemeinek összege, valamint az összes gyermekcsomópont összesített számlálóinak összege. |
| Exkluzív minták | Azon összegyűjtött minták teljes száma, amelyek esetében ez a függvény a hívásverem legalacsonyabb szintje. |
| % inkluzív | A teljes minták százalékos aránya, amely a tartalmazott minták oszlopban látható. A százalékos értékek két tizedesjegyre vannak kerekítve. |
| % Exkluzív | A kizárólagos minták oszlopban látható összes minta százalékos aránya. A százalékos értékek két tizedesjegyre vannak kerekítve. |
| Részletek | A függvény teljesen kvalifikált neve. Ez magában foglalja a sorok számát, ha elérhető. |
Ez a jelentéstábla a Végrehajtási idő (Szálak nézete) nevű nézetben tekinthető meg.
Jelölők jelentése
A Jelölők jelentése felsorolja a megjelenített időkeretben található jelölőket. A sávok pásztázása vagy nagyítása vagy elrejtése jelölők megjelenését vagy eltűnését okozhatja. A jelentés az egyes jelölőkkel kapcsolatos információkat tartalmazza:
Az idő, amikor elkezdődött, a nyom kezdetéhez képest.
Időtartam. Az időtartam nulla a jelölők és üzenetek esetében, mert azok egy pillanatot jelölnek.
Az azt létrehozó szál azonosítója.
Windows eseménykövetés (ETW) szolgáltató, amely létrehozta azt.
A jelölősorozat, amelyből létrehozták.
Az események kategóriája, amelyhez tartozik.
Fontossági szintje.
Típusa (span, flag vagy üzenet).
Az általa képviselt értékek magas szintű leírása
Az Exportálás gombra kattintva CSV-fájlként mentheti a Jelölők jelentést. A CSV-fájlban lévő adatokat más alkalmazásokkal vagy eszközökkel is használhatja.
Megjegyzés:
A Jelölők jelentés 1000 jelölőt jeleníthet meg. Az összes jelölő megtekintéséhez exportálja a teljes jelentést egy CSV-fájlba.
Szálankénti összefoglaló jelentés
Ez a sávdiagram megmutatja, hogy az egyes nem rejtett szálak mennyi időt töltenek az egyes tevékenységi kategóriákban a jelenleg látható időtartományban. A "végrehajtás" azt jelenti, hogy a szál végrehajtás alatt áll; minden más kategória azt jelenti, hogy a szál vár valamire.