我正在使用計時器實現應用程序。使用定時器線程時如何消除騎行?
在計時器中,我調用一個方法從服務器獲取圖像。
在計時器內部,我還打印變量i
的值,並增加它。
之後,我嘗試使用logcat打印i
的值。
但有時它打印這樣的:
1 2 3 4 5 5 6 7 7 7 7 7 8 9 10 11 12 12 12 14
這究竟是爲什麼?
我正在使用計時器實現應用程序。使用定時器線程時如何消除騎行?
在計時器中,我調用一個方法從服務器獲取圖像。
在計時器內部,我還打印變量i
的值,並增加它。
之後,我嘗試使用logcat打印i
的值。
但有時它打印這樣的:
1 2 3 4 5 5 6 7 7 7 7 7 8 9 10 11 12 12 12 14
這究竟是爲什麼?
計時器任務都在同一個線程上運行,並按順序執行。 OTOH看起來你的代碼有時候並行執行。這隻有在你的代碼創建一個單獨的線程(可能與AsyncTask,Handler等)時纔會發生。
那麼,你使用任何代碼創建一個單獨的線程?
謝謝你的回覆。請給我一個樣本。 – kiran
如果您向我顯示您的代碼,我可能會幫助您。 –
一些代碼片段請 –
你使用的是'java.util.Timer'嗎? –