list_threads_in_process
List threads inside a process by upid or process name. Returns tid, thread_name, pid, upid for up to 2000 threads.
Instructions
List threads inside one process: tid, thread_name, pid, upid. Limit 2000 rows.
Use when: drilling into a specific process picked from list_processes — e.g. finding a renderer's compositor thread, or auditing all threads under system_server.
Don't use for: enumerating ALL threads across the whole trace — use execute_sql against the thread table for that.
Parameters: pass either upid (trace-internal id, precise — prefer when multiple processes share a name like 'Renderer') or process_name (exact match). upid wins when both are set.
Empty result: returned as an error pointing at list_processes for available candidates.
When the 2000-row cap is hit (system_server, Chrome renderer-fork): drill down via execute_sql against the thread table directly.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| process_name | No | Process name to match exactly (e.g. "com.android.chrome", "/system/bin/init"). Either this or `upid` must be provided. | |
| upid | No | Process upid (the trace-internal unique id from `list_processes`). Takes precedence over `process_name` when both are set — useful for disambiguating same-named processes (e.g. multiple Renderer instances). Accepts both numbers and numeric strings. |