I am trying to understand what all thread runs when I start the application. I created a simple application in Android Studio, no extra line of code added, it is just a plain simple Hello World application which android studio creates.
When I run the adb shell ps and grep for my application UID, I see the following output:
C:\Users>adb shell ps -t | findstr u0_a110
u0_a110 3596 655 1593724 66480 SyS_epoll_ 0000000000 S com.example.rhbj36.myapplication
u0_a110 3601 3596 1593724 66480 futex_wait 0000000000 S Jit thread pool
u0_a110 3602 3596 1593724 66480 do_sigtime 0000000000 S Signal Catcher
u0_a110 3603 3596 1593724 66480 poll_sched 0000000000 S JDWP
u0_a110 3604 3596 1593724 66480 futex_wait 0000000000 S ReferenceQueueD
u0_a110 3605 3596 1593724 66480 futex_wait 0000000000 S FinalizerDaemon
u0_a110 3606 3596 1593724 66480 futex_wait 0000000000 S FinalizerWatchd
u0_a110 3607 3596 1593724 66480 futex_wait 0000000000 S HeapTaskDaemon
u0_a110 3608 3596 1593724 66480 binder_thr 0000000000 S Binder:3596_1
u0_a110 3609 3596 1593724 66480 binder_thr 0000000000 S Binder:3596_2
u0_a110 3610 3596 1593724 66480 futex_wait 0000000000 S Profile Saver
u0_a110 3612 3596 1593724 66480 SyS_epoll_ 0000000000 S RenderThread
u0_a110 3613 3596 1593724 66480 binder_thr 0000000000 S Binder:3596_3
u0_a110 3614 3596 1593724 66480 futex_wait 0000000000 S hwuiTask1
Can someone please help to understand what these 'Binder:3596_1,2,3' threads are? and why they are created? Explanation to other threads will also be helpful.