A TTD objektumokat hív meg

Description

TTD Calls objects are used to give information about function calls that occur over the course of a trace.

Parameters

Property Description
Function!SymbolName Egy vagy több dupla idézőjelben, vesszővel elválasztva. Például dx @$cursession. TTD. Hívások("modul!symbol1", "module!symbol2", ...)

Properties

Property Description
EventType Az esemény típusa. Ez a "Hívás" az összes TTD-hívásobjektum esetében.
ThreadId A kérést küldő szál operációsrendszer-szálazonosítója.
UniqueThreadId A nyomkövetési szál egyedi azonosítója. A normál szálazonosítók egy folyamat élettartama alatt újra felhasználhatók, de a UniqueThreadIds nem.
Function A függvény szimbolikus neve.
FunctionAddress A függvény címe a memóriában.
ReturnValue A függvény visszatérési értéke. Ha a függvény üres típussal rendelkezik, ez a tulajdonság nem lesz jelen.

Children

Object Description
Parameters[] A függvénynek átadott paramétereket tartalmazó tömb. Az elemek száma a függvény típusazonosítója alapján változik.
TimeStart A position object that describes the position at the start of the call.
TimeEnd A position object that describes the position at the end of the call.

Remarks

Az időutazás hibakeresése a PDF-fájlokban megadott szimbólumadatokat használja egy függvény paramétereinek és típusának, a visszatérési érték típusának és a hívási konvenciónak a meghatározásához. Abban az esetben, ha a szimbólumadatok nem érhetők el, vagy a szimbólumok nyilvános szimbólumokra korlátozódnak, továbbra is lehet lekérdezéseket végezni. Az időutazás lekérdezési motorja néhány feltételezést tesz ebben a forgatókönyvben:

  • A függvényhez négy 64 bites, nem aláírt egész számparaméter van
  • A visszatérési érték egy 64 bites, aláíratlan egész szám
  • A függvény neve rögzített sztringre van állítva: "UnknownOrMissingSymbols"

Ezek a feltételezések lehetővé teszik a lekérdezések elvégzését megfelelő szimbólumadatok hiányában. A legjobb eredmények érdekében azonban lehetőség szerint használjon teljes PDB-szimbólumokat.

Vegye figyelembe, hogy a Hívások függvény számítást végez, és a nyomkövetés méretétől függően eltarthat egy ideig. A processzorhasználat megnövekedik a számítás során, és figyeli a processzorhasználatot a feladatkezelőben, ami azt jelzi, hogy a számítás folyamatban van. A lekérdezési eredmények gyorsítótárazva vannak a memóriában, így a korábban lekérdezett hívásokra irányuló későbbi lekérdezések jelentősen gyorsabbak lesznek.

Example Usage

Ez a példa az ucrtbase!initterm hívásobjektumát mutatja be.

0:000> dx -r2 @$cursession.TTD.Calls("ucrtbase!initterm")
@$cursession.TTD.Calls("ucrtbase!initterm")
    [0x0]
        EventType        : Call
        ThreadId         : 0x2074
        UniqueThreadId   : 0x2
        TimeStart        : 1E:5D0
        TimeEnd          : 2D:E
        Function         : ucrtbase!_initterm
        FunctionAddress  : 0x7ffb345825d0
        ReturnAddress    : 0x7ff6a521677e
        Parameters
        SystemTimeStart  : Friday, January 12, 2024 21:18:40.799
        SystemTimeEnd    : Friday, January 12, 2024 21:18:44.26        

See Also

Time Travel Hibakeresés – Bevezetés a Time Travel hibakeresési objektumaiba

Time Travel Hibakeresés – Áttekintés

dx (Hibakereső objektummodell-kifejezés megjelenítése)