Noqonuniy tutqich - Handle leak

A qochqinning tutqichi ning bir turi dasturiy ta'minotdagi xato bu sodir bo'lganda a kompyuter dasturi a so'raydi tutqich a manba lekin endi ishlatilmaganda dastani bo'shatmaydi. Agar bu uzoq vaqt davomida tez-tez yoki takroriy takrorlansa, ko'p sonli tutqichlar foydalanish paytida belgilangan bo'lishi mumkin va shuning uchun mavjud emas, bu esa ishlash muammolari yoki a halokat.

Bu atama olingan xotira oqishi. Xotira sızıntısı kabi tutqich sızıntısı, maxsus holatlardir resurs qochqinlari.

Sabablari

Dasturchining qochqinning bir sababi, dasturchining tutqichni ob'ektga qaytarib olish shunchaki boshqarilmaydigan narsadir ma'lumotnoma, hisoblash, nusxa ko'chirish yoki boshqa operatsiya aslida amalga oshirilayotganligini tushunmasdan. Boshqa bir narsa kambag'al tufayli sodir bo'ladi istisno bilan ishlash dizayn naqshlari qachonki dasturchilar istisno yuzaga kelganda va vaqtincha ishdan bo'shatilganda, dastur oxiridagi tozalash kodi bajarilmasligi mumkin.

Bunga misol sifatida displey qurilmasiga dastakni olish mumkin. Dasturchilar ushbu xususiyatni ba'zi xususiyatlarni tekshirish uchun ishlatishlari mumkin (masalan, qo'llab-quvvatlanadigan rezolyutsiyani so'rash) va keyin shunchaki tutqichni bo'shatmasdan davom eting. Agar tutqich qo'shimcha ma'lumotisiz ba'zi ma'lumotlar tuzilmasi uchun ko'rsatgich bo'lsa, unda tutqich doiradan chiqib ketishiga yo'l qo'ymaslik muammo tug'dirmaydi. Biroq, ko'p hollarda, ular bilan bog'liq manbalar oqmasligi uchun bunday tutqichlar aniq yopilishi yoki chiqarilishi kerak; dastani bilan bajarilishi kerak bo'lgan aniq talablar interfeysga qarab farq qiladi.