Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Een asynchrone procedureaanroep (APC) is een functie die asynchroon wordt uitgevoerd. APC's zijn vergelijkbaar met uitgestelde procedureaanroepen (DPC's), maar in tegenstelling tot DPC's worden APC's uitgevoerd binnen de context van een bepaalde thread. Stuurprogramma's (behalve bestandssystemen en stuurprogramma's voor bestandssysteemfilters) gebruiken geen API's rechtstreeks, maar andere onderdelen van het besturingssysteem wel, dus u moet zich bewust zijn van de werking van API's.
Het Windows-besturingssysteem maakt gebruik van vier soorten APC's.
Speciale gebruikersmodus-APC's draaien strikt in de gebruikersmodus en worden altijd uitgevoerd, zelfs als de doelthread zich niet in een waarschuwbare wachtestaat bevindt. Zie QueueUserAPC2 voor meer informatie over speciale APC's in de gebruikersmodus.
Reguliere gebruikersmodus-APC's draaien strikt in gebruikersmodus en alleen wanneer de doelthread zich in een alerte wachtstatus bevindt. Het besturingssysteem maakt gebruik van reguliere gebruikers-API's voor het implementeren van mechanismen zoals overlappende I/O en de QueueUserApc Win32-routine .
Normale kernel-APC's draaien in kernelmodus bij IRQL = PASSIVE_LEVEL. Een normale kernel-APC onderbreekt alle code in de gebruikersmodus, inclusief gebruikers-APC's. Normale kernel-APC's worden over het algemeen gebruikt door bestandssystemen en besturingsprogramma's voor bestandssysteemfilters.
Speciale kernel-APC's worden uitgevoerd in de kernel-modus bij IRQL = APC_LEVEL. Een speciale kernel APC preƫmpt gebruikersmoduscode en kernelmoduscode die wordt uitgevoerd op IRQL = PASSIVE_LEVEL, inclusief zowel gebruikers-APC's als normale kernel-APC's. Het besturingssysteem maakt gebruik van speciale kernel-API's voor het afhandelen van bewerkingen zoals het voltooien van I/O-aanvragen.
Zie Hardwareprioriteiten beheren voor een lijst met IRQLs van laagste naar hoogste prioriteit.