Zastavení kódu při změně proměnné při debugování ve VS2015 – .NET – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Zastavení kódu při změně proměnné při debugování ve VS2015 – .NET – Fórum – Programujte.comZastavení kódu při změně proměnné při debugování ve VS2015 – .NET – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
vesi0
Duch
6. 1. 2017   #1
-
0
-

Zdravím všechny,

potřeboval bych breaknout kód pokud se mě změní proměnná, tzn. ne na určitém řádku, ale na řádku který změnu vyvolal. Snažil jsem se vytvořit Breakpoint pomocí Conditional Expression -> When changed -> název proměnné, ale prostě se mě to nikdy nezastaví i když jsem si jistý, že se hodnota x-krát změnila. Díky za rady :)

Nahlásit jako SPAM
IP: 94.113.246.–
Reklama
Reklama
Ovrscout
~ Anonymní uživatel
78 příspěvků
7. 1. 2017   #2
-
+1
-
Zajímavé

#1 vesi
Co jsem tak koukal, tak v .NET to běžně nejde, nebo alespon ne snadno. To co jsi zkoušel se vyhodnocuje jenom při průběhu tou řádkou kde to je umístěno.
To co hledáš jde udělat snadno v C++ kde debuger může ohlídat přístup do určitého místa v paměti - procesory na to mají podporu ale v .Net se ale "fyzické" adresy proměných mohou měnit např díky garbage colectoru.

Nejde to použít vždy ale nejjednodušší je přejmenovat původní proměnnou a doplnit Get Set pod původním názvem. Do těch (Get,Set) pak lze umistit běžný breakpoint.

Někde, ale už nevím kde a jak, jsem četl že jde debuger přepnout do "native" režimu, kde, pokud je danné proměnná připinovaná v paměti (pinned), by pak mělo to co chceš jít použít.

V extrémním případě by pak mohlo jít použít Windbg, ale tam už ti moc poradit nedokážu.

Můžeš zkusit zagooglit C# data breakpoint, možná se ti podaří něco najít.

Nahlásit jako SPAM
IP: 178.255.168.–
vesi0
Duch
9. 1. 2017   #3
-
0
-

#2 Ovrscout
Díky za odpověď a za radu. Udělat z proměnné property a breaknout to na ni mě nenapadla, ale funguje to dobře :)

Nahlásit jako SPAM
IP: 94.113.246.–
Zjistit počet nových příspěvků

Přidej příspěvek

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 70 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý