我有一個Java小程序,加載一個DLL。該DLL用於與第三方軟件接口。該DLL啓動第三方軟件,然後用於發送數據和從該軟件接收數據。我們偶爾會在加載dll時看到CPU使用率的高峯。尖峯與java.exe關聯,不與第三方軟件關聯。但是,只有在加載dll後纔會出現尖峯。這是一個非常簡單的問題的很多解釋。是否有可能,該DLL本身可能會消耗CPU,並且這會顯示在系統控制檯上,因爲java.exe會消耗大量CPU?能否將DLL加載到java中導致java.exe中的CPU使用率增加?
換句話說,給出一個狀態,其中java.exe似乎消耗了大量的CPU,這可能是由加載的dll引起的嗎?
謝謝
埃利奧特
嘗試使用Process Explorer或以此方式查看該Java進程中硬實線程的堆棧跟蹤。如果dll出現在蹤跡中,那麼它很可能是罪犯(儘管它當然不是確鑿的證據)。 – eran