Share via


Windows.System.Threading Espacio de nombres

Permite que una aplicación use el grupo de subprocesos para ejecutar elementos de trabajo.

El grupo de subprocesos proporciona un grupo de subprocesos de trabajo que una aplicación puede usar para los elementos de trabajo que se pueden ejecutar en paralelo. El uso del grupo de subprocesos es más sencillo y eficaz que crear subprocesos individuales, ya que el grupo de subprocesos administra la duración de los subprocesos y programa los elementos de trabajo cuando los subprocesos están disponibles.

Los elementos de trabajo se ejecutan de forma asincrónica y se pueden ejecutar en cualquier orden, por lo que es mejor usar el grupo de subprocesos para los elementos de trabajo que no tardan mucho tiempo y no dependen de la salida del otro. Para crear un elemento de trabajo, llame al método RunAsync . El elemento de trabajo se agrega a la cola del grupo de subprocesos, donde permanece hasta que un subproceso esté disponible. Cuando un subproceso está disponible, el grupo de subprocesos llama al delegado WorkItemHandler asociado del elemento de trabajo y se ejecuta el elemento de trabajo.

El grupo de subprocesos programa un elemento de trabajo tan pronto como un subproceso esté disponible, por lo que el elemento podría ejecutarse inmediatamente. Si desea que el elemento de trabajo se ejecute después de una determinada cantidad de tiempo, use un temporizador. Cree un temporizador y especifique su valor de tiempo de espera llamando al método CreateTimer . El temporizador comienza a contar en cuanto se crea, por lo que no es necesario iniciarlo. Cuando expira el temporizador, el grupo de subprocesos llama al delegado TimerElapsedHandler del temporizador.

Si desea ejecutar un elemento de trabajo más de una vez a intervalos regulares, use el método CreatePeriodicTimer para crear un temporizador periódico. Se restablece un temporizador periódico cada vez que expira y permanece activo hasta que se cancela.

Si quieres que un elemento de trabajo espere hasta que se señale un evento o un semáforo, o si quieres crear un elemento de trabajo previamente asignado, consulta Windows.System.Threading.Core.

Para obtener código de ejemplo que muestra cómo usar el grupo de subprocesos, consulte el ejemplo de grupo de subprocesos.

Nota

ThreadPool API es compatible con aplicaciones de escritorio y para UWP.

Clases

ThreadPool

Proporciona acceso al grupo de subprocesos. Consulte Subprocesos y programación asincrónica para obtener instrucciones detalladas sobre el uso del grupo de subprocesos:

Nota

ThreadPool API es compatible con aplicaciones de escritorio y para UWP.

ThreadPoolTimer

Representa un temporizador creado con CreateTimer o CreatePeriodicTimer.

Nota

ThreadPool API es compatible con aplicaciones de escritorio y para UWP.

Enumeraciones

WorkItemOptions

Especifica cómo se deben ejecutar los elementos de trabajo.

WorkItemPriority

Especifica la prioridad de un elemento de trabajo con respecto a otros elementos de trabajo del grupo de subprocesos.

Delegados

TimerDestroyedHandler

Representa un método al que se llama cuando se completa un temporizador creado con CreateTimer o CreatePeriodicTimer .

TimerElapsedHandler

Representa un método al que se llama cuando expira un temporizador creado con CreateTimer o CreatePeriodicTimer .

WorkItemHandler

Representa un método al que se llama cuando se ejecuta un elemento de trabajo.