Android DDMS查看Threads情況
大家可以看到一般一個虛擬機實例進程都包含有如下7個通用的線程,下面大致講一下這些線程的作用和創建流程。
1. main
這個就是主線程了。具體流程待細述。
2. HeapWorker
一個異步的工作線程,處理那些需要在單獨線程裏面做的避免同步問題的堆操作。其源代碼在dalvik/vm/alloc/HeapWorker.*部分。
3. Signal Catcher
這個線程是用來捕獲linux信號和做一些後續處理的。比如說,當一個SIGQUIT (Ctrl-\)信號到達後,這個線程就會掛起虛擬機,並且將所有線程的狀態信息輸出到log。其源代碼在dalvik/vm/SignalCatcher.*部分。
4. JDWP
這個線程是用來實現Java Debug Wire Protocol的。如果命令行調試器的參數爲"suspend=y",這樣會暫停虛擬機。這個估計和eclipse的調試和ddms等調試工具相關。其源代碼在dalvik/vm/jdwp/*部分。
5. Stdio Converter
這個線程從標準輸出和標準錯誤輸出讀取信息並將它們轉換爲log信息。其源代碼在dalvik/vm/StdioConverter.*部分。
6. Compiler
Android's Jit獨立於目標平臺的部分。其源代碼在dalvik/vm/compiler/Compiler.*和dalvik/vm/interp/Jit.*等部分。
7. Binder Thread #%d
使用binder進行通訊時用到的線程。其源代碼在frameworks/base/libs/binder/*等部分。
以下的線程屬於system_server和應用程序專有線程,視具體應用的需求而定。
8. system_server專有
android.server.ServerThread
ActivityManager
ProcessStats
PackageManager
FileObserver
AccountManagerService
SyncHandlerThread
UEventObserver
PowerManagerService
AlarmManager
WindowManager
InputDeviceReader
WindowManagerPolicy
InputDispatcher
ConnectivityThread
WifiService
WifiWatchdogThread
LocationManagerService
AudioService
GpsEventThread
GpsNetworkThread
android.hardware.SensorManager$SensorThread
watchdog
Wallpaper
com.android.server.MountListener
9. misc
其他部分線程由java層的api提供,Thread等。
1. main
這個就是主線程了。具體流程待細述。
2. HeapWorker
一個異步的工作線程,處理那些需要在單獨線程裏面做的避免同步問題的堆操作。其源代碼在dalvik/vm/alloc/HeapWorker.*部分。
3. Signal Catcher
這個線程是用來捕獲linux信號和做一些後續處理的。比如說,當一個SIGQUIT (Ctrl-\)信號到達後,這個線程就會掛起虛擬機,並且將所有線程的狀態信息輸出到log。其源代碼在dalvik/vm/SignalCatcher.*部分。
4. JDWP
這個線程是用來實現Java Debug Wire Protocol的。如果命令行調試器的參數爲"suspend=y",這樣會暫停虛擬機。這個估計和eclipse的調試和ddms等調試工具相關。其源代碼在dalvik/vm/jdwp/*部分。
5. Stdio Converter
這個線程從標準輸出和標準錯誤輸出讀取信息並將它們轉換爲log信息。其源代碼在dalvik/vm/StdioConverter.*部分。
6. Compiler
Android's Jit獨立於目標平臺的部分。其源代碼在dalvik/vm/compiler/Compiler.*和dalvik/vm/interp/Jit.*等部分。
7. Binder Thread #%d
使用binder進行通訊時用到的線程。其源代碼在frameworks/base/libs/binder/*等部分。
以下的線程屬於system_server和應用程序專有線程,視具體應用的需求而定。
8. system_server專有
android.server.ServerThread
ActivityManager
ProcessStats
PackageManager
FileObserver
AccountManagerService
SyncHandlerThread
UEventObserver
PowerManagerService
AlarmManager
WindowManager
InputDeviceReader
WindowManagerPolicy
InputDispatcher
ConnectivityThread
WifiService
WifiWatchdogThread
LocationManagerService
AudioService
GpsEventThread
GpsNetworkThread
android.hardware.SensorManager$SensorThread
watchdog
Wallpaper
com.android.server.MountListener
9. misc
其他部分線程由java層的api提供,Thread等。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.