The .NET CLR JIT will; to my Understanding;tries to better code using patterns, such as Method Inlining,Loop Unrolling. 如果采用方法,则出于以下原因不能这样做:
- Methods that are greater than 32 bytes of IL will not be inlined.
- Virtual functions are not inlined.
- Methods that have complex flow control will not be in-lined. Complex flow control is any flow control other than if/then/else; in this case, switch or while.
- Methods that contain exception-handling blocks are not inlined, though methods that throw exceptions are still candidates for inlining.
- If any of the method s formal arguments are structs, the method will not be inlined.
- Etc...
我的问题是...... 是否有办法查明联合技术优化程序决定如何为这些或其他原因ski?
我认为,我想知道需要调整哪些法典领域,以确保我能够利用最佳联合技术。