yoklateknik mülakat

Mobil Ios Memory Management Arc Mülakat Soruları

75 doğrulanmış Mobil Ios Memory Management Arc mülakat sorusu — cevaplarıyla çöz, açıklamalarıyla öğren, gerçek simülasyonda kendini test et.

Gerçek simülasyonu dene →

Örnek sorular

Ios Memory Management ArcZorluk 1
ARC (Automatic Reference Counting) gerçekte neyi sayar?
  • aBelirli bir class örneğine o an kaç güçlü referansın işaret ettiğini
  • bBir fonksiyonun toplamda kaç kez çağrıldığını
  • cBir uygulamanın kaç byte disk alanı kullandığını
  • dDosyada kaç optional değişken bildirildiğini
Açıklama:ARC, her class örneğine olan güçlü referans sayısını izler; bu sayı sıfıra ulaştığında örnek dealloc edilir.
Ios Memory Management ArcZorluk 1
Bir class örneğinin deinit'i ne zaman çalışır?
  • aÖrnek ilk oluşturulduğu anda hemen
  • bGüçlü referans sayısı sıfıra düşüp örnek dealloc edilmek üzereyken
  • cYalnızca kullanıcı uygulamayı zorla kapattığında
  • dProperty'lerinden herhangi biri her değiştiğinde
Açıklama:deinit, deinitializer'dır; hiç güçlü referans kalmadığı için örnek dealloc edilmeden hemen önce tam olarak bir kez çağrılır.
Ios Memory Management ArcZorluk 1
İki class örneği, A ve B, her biri diğerine güçlü bir referans tutuyor ve dışarıdan hiçbiri referans edilmiyor. Bu duruma ne denir?
  • aBir weak referans zinciri
  • bBir retain cycle (güçlü referans döngüsü)
  • cSarkan bir pointer (dangling pointer)
  • dBir copy-on-write ihlali
Açıklama:İki nesne dışarıdan hiçbir referans olmadan birbirini güçlü tuttuğunda, ikisinin de sayısı asla sıfıra ulaşmaz, bu yüzden ARC onları asla dealloc edemez — bu bir retain (güçlü referans) döngüsüdür, bir bellek sızıntısı biçimidir.
Ios Memory Management ArcZorluk 1
Bir property'yi weak var delegate: SomeDelegate? olarak tanımlamak, referans edilen nesnenin ARC referans sayısına ne yapar?
  • aNormal bir referans gibi güçlü referans sayısını tam olarak bir artırır
  • bReferans sayısını kalıcı olarak hemen sıfıra ayarlar
  • cGüvenlik için referans sayısını ikiye katlar
  • dGüçlü referans sayısını hiç artırmaz
Açıklama:Bir weak referans güçlü referans sayısına katkıda bulunmaz, bu yüzden bir nesneyi yalnızca weak ile tutmak onu canlı tutmaz.
Ios Memory Management ArcZorluk 2
İşaret ettiği nesne dealloc edildiğinde bir weak referansın değerine ne olur?
  • aSerbest bırakılan bellek konumunu değişmeden göstermeye devam eder
  • bDealloc olduğu anda uygulamayı çökertir
  • cBunu önlemek için sessizce güçlü bir referansa dönüştürülür
  • dOtomatik olarak nil olur
Açıklama:Weak referanslar, referans edilen nesne dealloc edildiğinde runtime tarafından otomatik olarak nil'e ayarlanır; weak referansların optional olarak bildirilmesi gerekmesinin tam nedeni budur.
Ios Memory Management ArcZorluk 2
Bir weak var property'sinin neden her zaman bir Optional tip olarak bildirilmesi gerekir (ör. weak var x: Foo?, asla weak var x: Foo değil)?
  • aÇünkü Optional tipler optional-olmayan class referanslarından daha az bellek kullanır
  • bÇünkü referans, referans edilen nesne dealloc edildiğinde herhangi bir anda nil olabilir
  • cÇünkü Swift derleyicisi tüm weak anahtar kelimelerinin bir enum tipinden önce gelmesini gerektirir
  • dÇünkü optional-olmayan weak referanslar bildirimde her zaman çökerdi
Açıklama:Bir weak referans, ömrü boyunca herhangi bir anda otomatik olarak nil'e ayarlanabildiğinden, tip sistemi nil'in temsil edilebilir, geçerli bir değer olması için onun Optional olmasını gerektirir.

2400 soruluk Mobil bankasında kendini sına.

Mülakata başla