Sap Sızıntısı Nedir?

Bir tanıtıcı sızıntısı, bellek gibi sınırlı bir hesaplama kaynağının bir uygulama tarafından aşırı tüketildiği bir durum olan bir kaynak sızıntısı türüdür. Bir uygulama, bir sistem kaynağına özel bir referans türü olan bir “tanıtıcı” açtığında ve daha fazla ihtiyaç duyulmadığında bu tanıtıcıyı kapatamazsa, tanıtıcı sızıntısı oluyor. Performansı düşürme, uygulama veya sistem çökmelerine neden olma potansiyeline sahiptir ve bir yazılım programında büyük hata veya özensiz kodlamanın bir belirtisi olabilir. Programcıların sızıntılarla mücadele etmelerine yardımcı olmak için birçok sorun giderme aracı vardır.

Bilgisayar programlamasında, tanıtıcı, bir bellek bloğu veya bir diskteki bir dosya gibi bir sistem kaynağına başvuran bir yapıdır. Kollar, sistem kaynakları ve uygulamalar arasında bir soyutlama katmanı sağlar ve genellikle bir bilgisayarın işletim sistemi tarafından, her bir tanıtıcıyı bir kaynakla eşleşen bir "tanıtıcı tablosu" aracılığıyla yönetilir. Bir programcı, daha sonra ekranda işletim sistemi tarafından çizilen bir pencereye başvurmak için bir tutamaç kullanabilir.

İyi niyetli bir uygulama, artık ihtiyaç duymadığı, kaynakları serbest bırakıp işletim sisteminin kullanımda olmayan bir kaynağı yönetmediğinden emin olmasını sağlayacak kolları serbest bırakacaktır. Programlama hataları, yazılım hataları ve yazılımlar arasındaki uyumsuzluklar, programların artık ihtiyaç duymadıkları kolları tutmasına neden olabilir. Uygulama çalışmaya devam ettikçe, çok sayıda gereksiz tutamak biriktirebilir. Bu tanıtıcı sızıntısı olarak bilinir.

Diğer kaynak sızıntıları gibi sızıntılarla baş etmek, yavaş bir performansa, sistem kararsızlığına veya aşırı durumlarda bir bilgisayar çökmesine neden olabilir. Bunun nedeni, tutamaçların sistem belleği gibi sonlu kaynakları kullanmasıdır ve bir uygulama bunları kapatmadan aşırı sayıda tutamaç üretirse, bu kaynaklar tükenir. Bir tanıtıcı sızıntısının sorunlara neden olmaya başladığı eşik, bilgisayarın işletim sistemine, kullanılabilir bellek miktarına ve diğer faktörlere bağlıdır. Birkaç düzine sapın açık kaldığı bir sızıntı muhtemelen kullanıcılar tarafından fark edilmeyecek, on bin veya daha fazla olan bir sap sızıntısı uygulamanın kodunda ciddi bir hatanın işareti.

Programcıların, sorun yaratma potansiyeli verilen sızıntıların ele alınması için özel dikkat göstermeleri gerekmektedir. Bir tanıtıcı sızıntısı tanısı koymanın en temel yöntemi, bir uygulama veya uygulamanın şu anda açık olduğu tanıtıcı sayısı olan tanıtıcı sayısının gözlemlenmesidir. Windows® Görev Yöneticisi bu bilgileri görüntüleyebilir ve hem Windows® hem de diğer işletim sistemleri için üçüncü taraf yardımcı programları da sızdıran tutamaçların tanımlanmasında ve izlenmesinde yararlı olabilir.