我有一個方法A.passLong(Long),它接收一個long作爲參數。我儀器類B,並添加該方法的調用,並傳遞一個長常量。Instrumantation導致恆定池腐敗
當我調試被調用的方法A.passLong(Long)時,我看到該方法接收的數字不是我作爲參數傳遞的數字。
我用「javap -verbose」來反編譯這個類的轉儲文件,它看起來像從常量池中讀取的數字(我看到的與調試器相關的數字)是期望數量的串聯以及常數池中的以下數字。
這不是JIT問題,因爲它在禁用調試和JIT時會重現。
任何想法?
修復儀器? – 2013-03-10 09:22:14