the method getPixelColor(int x,int y)
from the Robot class的工作原理是什麼?我嘗試這樣的代碼片段:我的電腦,這是一個酷睿2上Robot的getPixelColor(int x,int y)方法是如何工作的?
try
{
Robot robos = new Robot();
}
catch (AWTException e)
{
}
for (int i = 0; i < 100; i++)
robos.getPixelColor(0, 0);
System.out.println("fsadf");
,並花了一秒或更短執行打印語句。然而,當我在我的筆記本電腦上運行這個相同的代碼時,這是一個核心的i3,花費了更多的時間(大約2-3秒)。
這是什麼原因?這是否與屏幕質量或類似的東西?我怎麼解決這個問題?
*花費1秒或更少的時間來執行「*一個聰明的虛擬機可能意識到循環完全沒有(或至少達到)完全沒有任何東西,從而完全消除它。或換句話說,它可能不是硬件,但是虛擬機是不同的,儘管一般的觀點是這樣的:1)不要執行過早的優化; 2)如果代碼確實需要優化,不要將這些瑣碎的,不相關的測試作爲設計決策的基礎。該代碼甚至不會編譯,因爲'robos'在循環中不在顯示範圍內。 –