Mis on käepideme leke?

Käepideme leke on teatud tüüpi ressursside leke, olukord, kus rakendus kulutab ülemäära piiratud arvutusressurssi, näiteks mälu. Käepideme lekked ilmnevad siis, kui rakendus avab “käepideme”, mis on eritüüpi viide süsteemiressursile, ja ei suuda seda käepidet sulgeda, kui seda enam ei vajata. Need võivad vähendada jõudlust, põhjustada rakenduse või süsteemi krahhi ning olla tarkvaraprogrammi suurte vigade või lohaka kodeerimise sümptomiks. Programmeerijatele on saadaval palju tõrkeotsingu tööriistu, mis aitavad leketega toime tulla.

Arvutiprogrammeerimises on käepide struktuur, mis viitab süsteemiressursile, näiteks mäluplokile või failile kettal. Käepidemed pakuvad süsteemiressursside ja rakenduste vahelist abstraktsioonikihti ning neid haldab tavaliselt arvuti operatsioonisüsteem “käepidemetabeli” kaudu, mis sobitab iga käepideme ressursiga. Programmeerija võib kasutada käepidet, et viidata aknale, mille operatsioonisüsteem seejärel ekraanile joonistab.

Hästi käituv rakendus vabastab käepidemed, mida ta enam ei vaja, vabastades ressursse ja tagades, et operatsioonisüsteem ei hakka haldama ressurssi, mida ei kasutata. Programmeerimisvead, tarkvaravead ja tarkvara vahelised kokkusobimatused võivad põhjustada programmide hoidmist käepidemetest, mida nad enam ei vaja. Kui rakendus jätkab töötamist, võib see koguneda suurel hulgal mittevajalikke käepidemeid. Seda tuntakse käepideme lekkena.

Käepideme lekked, nagu ka muud tüüpi ressursside lekked, võivad põhjustada aeglast jõudlust, süsteemi ebastabiilsust või äärmuslikel juhtudel arvuti krahhi. Selle põhjuseks on asjaolu, et käepidemed tarbivad piiratud ressursse, nagu süsteemimälu, ja kui rakendus genereerib liiga palju käepidemeid ilma neid sulgemata, ammenduvad need ressursid. Täpne lävi, mille juures käepideme leke hakkab probleeme tekitama, sõltub arvuti operatsioonisüsteemist, saadaolevast mälumahust ja muudest teguritest. Leket, mille puhul mõnikümmend käepidet lahti jäetakse, kasutajad ilmselt ei märka, samas kui kümne tuhande või enama käepideme leke on märk tõsisest veast rakenduse koodis.

Programmeerijad peavad pöörama erilist tähelepanu lekete käsitlemisele, kuna need võivad probleeme põhjustada. Kõige põhilisem meetod käepideme lekke diagnoosimiseks on jälgida käepidemete arvu, mis on protsessi või rakenduse käepidemete arv, mis on rakenduse töötamise ajal hetkel avatud. Windows® Task Manager suudab seda teavet kuvada ning kolmanda osapoole utiliidid nii Windows® kui ka muude operatsioonisüsteemide jaoks võivad olla kasulikud ka lekkivate käepidemete tuvastamisel ja leidmisel.