Yazdığım küçük hobi oyunu için basit bir Kaynak Yöneticisi yazmaya çalışıyorum. Bu kaynak yöneticisinin yapması gereken görevlerden biri, kullanılmayan kaynakları boşaltmaktır. Ben iki yolla bunu düşünebilirsiniz:C# - Nesne başvuru sayısı al
bir nesne artık, bu artık kullanıyor belirtmek için Kaynak Yöneticisi bir yöntem çağırmalıdır kaynağına başvuru gerektiriyorsa; veya
bir nesne artık kaynağına başvuru gerektirir
, sadece null değerine ayarlar. Daha sonra Kaynak Yöneticisi'nden kullanılmayan kaynakları boşaltması istendiğinde, her bir kaynak için referans sayımı (yansıma aracılığıyla) alır. başvuru sayısı birse (Kaynak Yöneticisi kaynağına bir başvuru yapar), kaynağı boşaltın.
C# 'daki ikinci çözümü elde etmenin bir yolu var mı? Teşekkürler.
Kaynak yöneticiniz garbace toplayıcısının bunu yapmaz mı? – CannibalSmith
@CannibalSmith - tipik olarak, birden çok kod bitinin kaynağı yeniden kullanmasına izin verir (temel olarak, bir önbellek) –
Görüntüleri yüklemek için, bir seferde yalnızca bir resmin yüklendiğinden emin olmak için (yalnızca kaç tane sorun olursa olsun) bir versiyon hafızada olabilir). –