Sela

.NET Debugging Workshop

Description
The famous quote goes: "Debugging code is twice as hard as writing it in the first place." Can we prove otherwise? Debugging has become more complicated as new technologies emerged, but the .NET framework and the CLR offer us new debugging capabilities that we have never had before. External tools and extensions augment the built-in debugging capabilities and take us to completely new levels of understanding application behavior, even in a production environment. Realizing the full potential of all these possibilities isn't easy, but practice makes perfect and the exercises sprinkled throughout this three-day course will give participants valuable take-aways for their day jobs.
Intended audience
Experienced .NET programmers and integrators who seek to extend their debugging toolbox with new techniques and practice them first-hand.

Topics

Exception Handling
Debugging Symbols
Dump Files and Types
Generating Dumps
Automatic Dump Generation
Opening Dump Files
Basic WinDbg Commands
Smart Breakpoints
WinDbg Scripts
WinDbg Extensions
LAB: Getting Acquainted with WinDbg
LAB: Capturing Crash Dumps (x3)
Performance Counters
Process Explorer
Process Monitor
Application Compatibility Toolkit
ETW and Xperf
GFlags
LAB: Profiling with Xperf
LAB: Process Monitor
LAB: Application Compatibility Toolkit
Visual Studio Windows
Breakpoints and Tracepoints
Data Breakpoints, Function Breakpoints
Threads
Parallel Stacks, Parallel Tasks
Static Code Analysis
LAB: Runtime Checks
Setting Smart Breakpoints
Analyzing Memory Leaks
Inspecting Objects
Inspecting Threads and Stacks
Advanced Commands
LAB: Getting Acquainted with SOS
LAB: Capturing Crash Dumps (x2)
LAB: Deadlock (x2)
LAB: Memory Leak (x4)
Managed Debugging Assistants
IntelliTrace
Visual Studio Profiler
CLR Profiler
ANTS Memory Profiler
Assembly Loading Diagnostics
LAB: Fusion Diagnostics
LAB: IntelliTrace
Reference Types and Value Types
Boxing and Unboxing
Implementing Value Types Correctly
GC Heap and Flavors
Generational GC
GC Segments
Finalization

רוצה לדבר עם יועץ?

האם אתה בטוח שאתה רוצה לסגור את הטופס ולאבד את כל השינויים?