|The easiest way to get the threads or handles used by a process is to first to get the process info and then retrieve the desired info as shown below -|
Process appProcess = Process.GetProcessById(processId); // Can get process by name also
int threads = appProcess.Threads.Count;
int handles = appProcess.HandleCount;
As this information is a snapshot of the process, calling the Process.Refresh() method at desired intervals is required to get the latest counts.