
آیا تا بهحال تجربهای داشتهاید کهbreakpointهادر اپلیکیشن شما، باعث اختلال در دیباگ کردن شود؟
ممکن است لازم باشد کد آپدیت شده خود را تست کنید یا روی قسمت دیگری تمرکز کنید که نیاز بهbreakpointنداشته باشد. در این سناریوها، شما مجبور هستیدbreakpointرا حذف یا غیرفعال کنید یا پیرسینگ را ادامه دهید تا زمانی که به خط کد موردنظر برسید. در Visual Studio 2022 Preview2 ، برای این سناریوها میتوانید از "Force Run To Cursor" استفاده کنید که شبیه"Run To Cursor"است، با این تفاوت که میتوانیدbreakpointرا حذف نکنید و داشته باشید و دیباگ ازروی آنها رد میشود و توقفی ندارد تا زمانی که به خط کد موردنظر شما برسد.همچنین از هر یک از شرایط توقف first-chance exceptions که ممکن است رخ دهد، پرش میکند.
با رد کردن همهBreakpointهااپلیکیشن خود را سریعتر دیباگ کنید
برای اجرای مستقیم در مکان نشانگر خود، در سورس کد یا پنجره Call Stack، خطی را که میخواهید دیباگ در آن متوقف شود انتخاب کنید، کلیک راست کرده و "Force Run to Cursor" را انتخاب کنید.
اپلیکیشن Visual Studio debugger را ضمیمه میکند و مکث در مکان نشانگر، هر breakpoint و first-chance exceptions که در حین اجرا وجود دارد موقتاً غیرفعال میشوند. در این مرحله میتوانیم وضعیت برنامه را ارزیابی کنیم. پس از اجرای Force Run To Cursor ، breakpoint و استثناها به حالت اصلی خود برمیگردند.
اینجا یک مثال ساده آورده شده است، "Force Run To Cursor" اجرا را ادامه میدهد و در خط 8 که ما Force run را اجرا کردیم breakpoint رخ میدهد.
Point and click force run to cursor
هنگامی که در حال یک دیباگ فعال هستید، یک علامت سبز با راهنمای ابزار “Force run execution to here” در کنار خط کد ظاهر میشود، جایی که اشاره گر ماوسشمابانگهداشتن کلید Shift قرار دارد.
با ادامه همان مثال بالا، اینجا"Force run to Cursor"را با استفاده از دکمه نشانگر سبز اجرا می کنیم.
یادداشت های ویژه(Special notes)
برای متوقف شدن دیباگ در"Force Run To Cursor"، خط کد شما باید قابلدسترسی باشد.یعنی، خط باید متعلق بهشرط / متد/ اکشن باشد که هنگام اجرای اپلیکیشن فراخوانی میشود.همچنین اگر یک استثنا مدیریت نشده قبل از رسیدن به آن خط رخ دهد، این برنامه میتواند زودتر متوقف شود.همچنین میتوانید در حالات زیر از"Force Run To Cursor"خارج شوید:
- متوقف کردن دیباگ
- ایجاد یک استثنا، پس از فعالکردن مجدد
- انتخاب (Break all ) توقف همه (یعنی دکمه مکث را در نوارابزار انتخاب کنید)
- ایجاد یکbreakpointجدید
- پس از فعالسازی مجدد،breakpointموجود را بزنید
جمعبندی
زمانی که در حال دیباگ کردن برنامه هستید و تعدادیBreakpoint در سورس ایجاد کردهاید، و میخواهید تمامی اینBreakpointها را رد کنید و به یک نقطه خاص برسید، بدون آنکه اینBreakpointها را حذف کنید، میتوانید از این قابلیت جدیدVS 2022استفاده کنید.
Force Run To Cursorیک روش مناسب برای دیباگ اپلیکیشن شما ارائه میدهد.
اکنون میتوانید با دانلودVisual Studio Preview 2 آن را امتحان کنید.
- منبع : https://devblogs.microsoft.com/visualstudio/debug-with-force-run-to-cursor/
- نویسنده: Harshada Hole
- ترجمه : تیم تحریریه باگتو