What is JIT Debugging?
JIT debugging or “Just-In-Time” debugging refers to the Visual Studio debugger which automatically launches when a program or application running outside of it crashes. When a particular program encounters an exception or a fatal error, you will be able to check on this through the JIT debugger before proceeding with termination of the application. In simple terms, a window will pop out telling you that a program encountered an error so the JIT debugger will give you the option to check on the particular error or just stop the application from running.
By default, Just-in-Time debugging is set to active or enabled status when installing Visual Studio. During an error, a series of dialog boxes will pop out and you will need to answer the questions and/or select the options you want to take to handle the error. You will also have the option to “select” the JIT debugger as your default debugger whenever an error is encountered in the future. In terms of the type of code that your computer will debug, one can choose the debugging engines manually or simply let Visual Studio automatically select the right debugging engine for your program that crashed. And if in the process an untrusted code is encountered, the JIT debugger will also prompt you to answer if you want to continue debugging or not.
To enable and/or disable the JIT-debugging feature of Visual Studio, one must have administrator rights. If you have these admin privileges, you only have to go to the “Tools” menu and click “Options” to be able to manage your Debugging folder. For advanced users, they can also disable JIT-debugging by editing the registry files.
Just-in-Time debugging is useful in many programming softwares. If one of these crashes while in use, the JIT debugger can help repair and/or restore the application. But for the regular user, he/she may be annoyed every time the JIT-debugging window pops out, because most of the time he/she doesn’t need it.