Compartir a través de


Cómo: Investigar el uso de subprocesos de un proceso

Actualización: noviembre 2007

Para ver los subprocesos del proceso puede leer el valor de la propiedad Threads del componente Process. El valor devuelto es una colección del tipo ProcessThreadCollection que contiene una colección de objetos ProcessThread que representan los subprocesos del sistema operativo que están en ejecución en el proceso. A continuación, puede recorrer en iteración la colección para ver las propiedades de subproceso individuales. El subproceso principal no es necesariamente el subproceso que se encuentra en el índice 0 de la colección.

Para investigar el uso de subprocesos de un proceso

  1. Si el proceso no ha sido iniciado por un componente Process, asocie un componente Process al proceso deseado. Para obtener más información, vea Cómo: Enlazar con procesos existentes.

  2. Asigne el valor de la propiedad Threads del proceso a una variable de colección vacía de tipo ProcessThread.

  3. Recorra en iteración el índice de la matriz para ver las propiedades de cada subproceso individual.

    El ejemplo siguiente muestra cómo se lee la propiedad Threads del Bloc de notas y se asigna el valor a una matriz vacía. A continuación, se lee el valor BasePriority del primer subproceso en la matriz ProcessThread y se muestra en un cuadro de texto denominado TextBox1.

    Dim myCollection As ProcessThreadCollection
    Dim myProcesses() As Process
    ' Create an instance of the Process Component and associate 
    ' it to the target process.
    myProcesses = Process.GetProcessesByName("Notepad.exe")
    ' Read the Process.Threads property and assign it to the empty array.
    myCollection = myProcesses(0).Threads
    ' Read desired ProcessThread property.
    Me.Textbox1.Text = myCollection(0).BasePriority.ToString()
    
         ProcessThreadCollection threads;
            Process[] notepads;
            // Retrieve the Notepad processes.
            notepads = Process.GetProcessesByName("Notepad");
            // Read the Process.Threads property.
            threads = notepads[0].Threads;
            // Read desired ProcessThread property.
            TextBox1.Text = threads[0].BasePriority.ToString();
    

Vea también

Tareas

Cómo: Enlazar con procesos existentes

Cómo: Crear componentes de proceso

Conceptos

Introducción a la supervisión y administración de procesos de Windows

Otros recursos

Recuperar información sobre procesos

Administrar procesos