Explain about JIT

In .Net framework we have just in time compiler present in Common Language Runtime which converts MSIL code into native code.

Different types of  Jit are:

  • Pre-Jit -Compiles complete source code into native code at the time of deployment
  • Ecno-Jit -Compiles the code associated with required item like loading form or button click etc
  • Normal Jit -Compiles the code required and stores in cache, whenever the same thing is required it loads from cache.
By default we have normal Jit in CLR. To use pre jit we make use ngen.exe. In theory it seems that Pre-Jit is useful but when you look at realty Jit compiles and generates native code specific to machine depending on the various properties of the run time environment ,so it is beneficial to go with normal jit.