Een deadlock-fout is een situatie waarin een proces of programma niet kan starten omdat de benodigde bron door een ander proces of programma wordt gebruikt.
Met andere woorden, de processen of programma's die de respectieve bronnen al gebruiken, verhinderen dat andere processen er toegang toe hebben. De enige oplossing om dit probleem op te lossen is om de bronnen vrij te geven.
Deadlock-fouten zijn specifiek voor besturingssystemen waar meerdere processen toegang tot dezelfde bronnen vereisen. Twee of meer processen kunnen soms in conflict komen over dezelfde bron.
Wanneer een proces geen toegang heeft tot de bronnen die het nodig heeft om goed te kunnen werken, komt het automatisch in een wachttoestand. Als de bronnen geblokkeerd blijven, worden de processen niet gestart. De duur van de wachttoestand is echter vaak beperkt. Als de systeembronnen niet beschikbaar blijven, eindigt het wachten en wordt er een foutbericht weergegeven in het proces dat niet kon worden gestart.
Een eenvoudige analogie
Beeld twee auto's die elkaar tegemoet komen op een eenbaansweg. De auto's kunnen niet bewegen als ze eenmaal voor elkaar staan. Iets soortgelijks gebeurt wanneer een proces wacht op een bron die door een ander programma is verkregen.
Deadlock-fouten in Windows 10
Hier zijn enkele snelle voorbeelden van deadlock-fouten in Windows 10:
- Een ander programma gebruikt dit bestand.
- Het document wordt gebruikt door een andere toepassing en is niet toegankelijk.
- Het bestand is in gebruik door een ander programma/proces/gebruiker.
Sommigen van jullie zijn misschien al bekend met deze fouten. We hebben er ook enkele besproken hier op Technipages:
- Fix Dit apparaat wacht op een ander apparaat om te starten
- Windows 10: een ander programma gebruikt dit bestand momenteel
Zoals u kunt zien, geven al deze foutvoorbeelden aan dat een ander programma het bestand gebruikt (de bron, zo u wilt). Als een tweede programma daarom toegang tot dat bestand vraagt, wordt de toestemming geweigerd.
Wist je dat?
Windows 10 gebruikt Stuurprogrammaverificatie impasses te detecteren. Microsoft biedt ook een hulpprogramma met de naam Toepassingsverificatie: die is opgenomen in de Windows Software Development Kit. De tool analyseert programma's terwijl ze worden uitgevoerd om mogelijke ontwerp- of uitvoeringsfouten te detecteren die een impasse zouden kunnen veroorzaken.
Hoe u deadlock-fouten kunt voorkomen
Twee van de eenvoudigste manieren om deadlock-fouten te voorkomen, zijn:
- Meerdere exemplaren van hetzelfde resourcetype toevoegen.
- Processen toestaan resources te delen met andere processen.
Deze oplossingen zijn echter niet altijd haalbaar op bepaalde computerconfiguraties.