2015-10-09 50 views
1

當我使用Eclipse進行Android開發時,可以選擇一個線程並凍結它 - 所以它不會運行。這允許調試一個線程而不會中斷其他線程。我該如何凍結Android Studio中的線程

線程在Android Studio中如何凍結 - 阻止運行。我找到了線程列表,但沒有看到任何控制凍結線程。

-------- <更多信息> ----

2人不明白的問題,所以讓我再試一次。 在Eclipse中,當調試多線程應用程序時,可以在調試器中暫停和恢復線程。

enter image description here

在上述圖像,你看到Debug視圖,示出的線程列表。右鍵單擊其中一個線程,然後在菜單中選擇繼續,掛起,終止。這些菜單操作適用於選定的線程。

在調試多線程應用程序時,有時候暫時暫停一個線程是非常重要的。

在Android Studio中,我可以獲得線程的轉儲,並選擇每個線程顯示其右側的堆棧跟蹤。

enter image description here

但我無法找到任何方式掛起和恢復線程。

這又是調試器的關鍵要求。

有誰知道這個掛起/恢復可以在Android Studio中完成嗎?

+0

也許'睡眠'方法? – Sweeper

+0

在Java中,沒有線程安全的方式來強制終止或中斷線程。線程中斷是一個合作過程。控制線程可能會請求在另一個線程中終止或中斷(並且有機制可以幫助您這麼做),但是線程在請求​​發生時還必須關注其自身的終止/中斷。 – scottb

回答

0

我還沒有看到引擎蓋下可以肯定這一點,但我想它是使用JVMTI。這個「鉤入」JVM的級別低於Java類庫中的API。

而且,我可以告訴大家:

  1. 我懷疑JVMTI提供一個真正的Android設備上。 (我不知道是否有等價物。)

  2. 使用JVMTI控制自己的線程的Java應用程序將是一個非常糟糕的主意。想想Thread.stop和朋友們棄用的原因,並乘以10.