Vad är ett dödlägeoffer?

Ett deadlock-offer är en datoranvändare som agerar som en klient ansluten till en server, vars anslutning servern är valt att avsluta för att lösa en deadlock. Denna typ av dödlås uppstår ofta när två olika processer försöker använda samma resurser, vilket gör att båda processerna låses fast. För att lösa detta problem kan många serverdatabassystem upptäcka när en dödlås inträffar och sedan välja att avsluta anslutningen till en av de två processerna. Ett dödläge kan väljas godtyckligt av programmet, även om användaren vanligtvis väljs som den som lättast kan ansluta till systemet igen.

Termen "deadlockoffer" används vanligtvis i fel- eller undantagsmeddelandet som visas av systemet till användaren när hans eller hennes anslutning avslutas. Detta fel inträffar i en situation som ofta kallas en dödlås. I allmänhet uppstår en dödlås när två användare som är anslutna till en server försöker komma åt samma resurser på ett sätt som skapar ett lås i systemet. Till exempel, om användare A använder resurs 1 och måste också använda resurs 2, medan användare B använder resurs 2 och måste också använda resurs 1, inträffar en deadlock eftersom ingen av användarna kan avsluta sin process.

I det här exemplet väljs en av de två användarna av systemet som deadlock-offer och hans eller hennes anslutning till servern skulle avslutas. När detta inträffar kan den andra användaren avsluta sin process, avsluta dödlåset och dödläget kan ansluta till servern igen. De flesta serverdatabassprogram är utformade med deadlock-upptäckt, vilket vanligtvis upptäcker en deadlock efter en viss tid. Även om en dödlås inte nödvändigtvis är ett stort problem, kan det vara en olägenhet för användare, särskilt de som väljs som dödläget, och indikerar ett eller flera misstag i serverdatabasprogrammering.

Hur en server väljer ett dödläge kan variera. Vissa program väljer offeret på rent slumpmässig grund. Även om detta kan vara ganska effektivt, eftersom valet leder till en lösning och slutet på dödläget, är detta inte alltid en idealisk metod. En server programmeras vanligtvis för att utvärdera de två användarna för att välja den som lättast kan återansluta eller som kommer att förlora minsta mängd data på grund av frånkoppling.

ANDRA SPRÅK

Hjälpte den här artikeln dig? Tack för feedbacken Tack för feedbacken

Hur kan vi hjälpa? Hur kan vi hjälpa?