用eclipse DDMS查看進程下的線程

來源:互聯網
上載者:User

用Eclipse DDMS可以看到下面的線程:

Signal Catcher
Heap Worker
main thread
binder thread #1
binder thread #2
那這些線程都是用來做什麼的呢。

在Android系統中,Java層和c++/c層都可以建立線程。不過Java層建立的線程最終都由c++/c層來實現。使用ddms這個工具可以查看虛擬機器執行個體進程(除zygote本身和由native code建立的進程,比如vold外)所包含的線程大致資訊。比如線程名字,id號,狀態,user time和system time等。
大家可以看到一般一個虛擬機器執行個體進程都包含有如下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等。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.