Función EnterUmsSchedulingMode (winbase.h)
Convierte el subproceso de llamada en un subproceso de programador de programación en modo de usuario (UMS).
Advertencia
A partir de Windows 11, no se admite la programación en modo de usuario. Todas las llamadas producen el error ERROR_NOT_SUPPORTED
.
Sintaxis
BOOL EnterUmsSchedulingMode(
[in] PUMS_SCHEDULER_STARTUP_INFO SchedulerStartupInfo
);
Parámetros
[in] SchedulerStartupInfo
Puntero a una estructura de UMS_SCHEDULER_STARTUP_INFO que especifica atributos UMS para el subproceso, incluida una lista de finalización y una función de punto de entrada UmsSchedulerProc .
Valor devuelto
Si la función se ejecuta correctamente, devuelve un valor distinto de cero.
Si la función no se realiza correctamente, el valor devuelto es cero. Para obtener información de error extendida, llame a GetLastError.
Comentarios
El programador de UMS de una aplicación crea un subproceso de programador de UMS para cada procesador que se usará para ejecutar subprocesos de UMS. El programador suele establecer la afinidad del subproceso del programador para un único procesador, reservando eficazmente el procesador para el uso de ese subproceso del programador. Para obtener más información sobre la afinidad de subproceso, vea Varios procesadores.
Cuando se crea un subproceso de programador de UMS, el sistema llama a la función de punto de entrada UmsSchedulerProc especificada con la llamada a la función EnterUmsSchedulingMode . El programador de la aplicación es responsable de finalizar cualquier inicialización específica de la aplicación del subproceso del programador y seleccionar un subproceso de trabajo de UMS que se va a ejecutar.
El programador de la aplicación selecciona un subproceso de trabajo de UMS que se va a ejecutar mediante una llamada a ExecuteUmsThread con el contexto del subproceso de UMS del subproceso de trabajo. El subproceso de trabajo se ejecuta hasta que produce el control llamando a UmsThreadYield, bloques o termina. El subproceso del programador está disponible para ejecutar otro subproceso de trabajo.
Un subproceso del programador debe seguir ejecutándose hasta que todos sus subprocesos de trabajo lleguen a un punto de detención natural: es decir, todos los subprocesos de trabajo han dado lugar a errores, bloqueados o finalizados.
Requisitos
Cliente mínimo compatible | Windows 7 (solo 64 bits) [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 R2 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | winbase.h (incluya Windows.h) |
Library | Kernel32.lib |
Archivo DLL | Kernel32.dll |
Conjunto de API | api-ms-win-core-ums-l1-1-0 (introducido en Windows 7) |