UsePositionLock

El valor del Registro UsePositionLock cambia cómo PortCls serializa su E/S. La habilitación de esta configuración puede ser útil si el controlador de audio sufre problemas atribuidos al bloqueo global del dispositivo que portcls usa para la serialización. Tenga en cuenta que, cuando UsePositionLock está habilitado, dependerá del controlador de audio aplicar cualquier serialización entre las devoluciones de llamada enumeradas a continuación y otras devoluciones de llamada de propiedad (si es necesario). Esta marca no está habilitada de forma predeterminada. Antes de activarlo, asegúrese de revisar el conductor para ver las condiciones de carrera entre las devoluciones de llamada del conductor.

Use la siguiente configuración inf para habilitar este comportamiento.

[MyAudioDevice.AddReg]
HKR, DispatchSettings, UsePositionLock, 3, 01, 00, 00, 00

Cuando este valor se establece en 1 o superior, portcls usa el bloqueo de posición de streaming para serializar las devoluciones de llamada enumeradas a continuación. Si no está presente o se establece en cero, el comportamiento predeterminado es usar el bloqueo global del dispositivo. Este valor se lee la primera vez que se agrega el dispositivo.

Esta configuración inf se almacenará en la instancia del dispositivo en el Registro cuya ruta de acceso contiene el GUID multimedia de {4d36e96c-e325-11ce-bfc1-08002be10318}.

Esta configuración inf crea un valor del Registro que contiene el GUID multimedia de {4d36e96c-e325-11ce-bfc1-08002be10318} que incluye la instancia del dispositivo de audio.

La configuración UsePositionLock solo se admite en los filtros WaveRT y Topología. Portcls lee este valor del Registro en tiempo de adición del dispositivo y la configuración persiste hasta que se quita el objeto de dispositivo funcional (FDO).

Si portcls detecta que esta marca está activada, no serializa las siguientes propiedades con el bloqueo global del dispositivo.

Esto significa que las siguientes devoluciones de llamada de miniport no se serializan con las demás solicitudes de propiedad (incluidas las solicitudes set-state).