Java交换机足够智能重新排列?

时间:2017-06-07 04:43:00

标签: java performance jvm jit

鉴于一段热门的代码具有许多案例选项(并且所有案例都有中断,例如可以重新排列),JVM会找出频繁的条目来检查它们吗?

1 个答案:

答案 0 :(得分:2)

个别案件的执行频率或可能性并未涉及。编译器将生成:

  • 带有关联跳转表的lookupswitch指令,该跳转表由开关值直接索引,或
  • import delimited "/Users/mharris/Desktop/API Project/Crosswalk_cip.csv" drop if cipcode_str_2dig == "" & cipcode_str_4dig == "" & cipcode_str_6dig == "" tempfile cw save `cw', replace use `cw', replace keep cipcode_str_2dig keep if cipcode_str_2dig!="" tempfile cw2 save `cw2', replace use `cw', replace keep cipcode_str_4dig keep if cipcode_str_4dig!="" tempfile cw4 save `cw4', replace use `cw', replace keep cipcode_str_6dig keep if cipcode_str_6dig!="" tempfile cw6 save `cw6', replace 指令,其中包含可以(通常)二进制搜索的键/目标对表。

请参阅JVM Specification #3.10