Go

İleri Düzey Go

Derleyici iç yapısı, runtime, scheduler, cgo, unsafe paketi, assembly, build tag'leri

20 mülakat soruları·
Senior
1

Derleyicinin ürettiği assembly kodunu incelemeye olanak tanıyan Go toolchain aracı hangisidir?

Cevap

go tool compile -S komutu, Go derleyicisinin ürettiği assembly kodunu görüntüler. Bu araç, derleyici optimizasyonlarını anlamak ve performans açısından kritik kodu analiz etmek için gereklidir. Standart bir derleme sırasında aynı sonucu elde etmek için go build -gcflags=-S de kullanılabilir.

2

Go'daki unsafe paketinin ana amacı nedir?

Cevap

unsafe paketi, düşük seviyeli bellek işlemleri gerçekleştirmek için Go'nun tip sistemini atlamaya olanak tanır. Bellek adreslerini doğrudan değiştirmeyi sağlayan Pointer, Sizeof, Alignof ve Offsetof gibi fonksiyonları sunar. C koduyla birlikte çalışabilirlik veya kritik optimizasyonlar gibi belirli durumlar dışında kullanımı önerilmez.

3

Go scheduler (GPM) goroutine yürütmesini nasıl düzenler?

Cevap

Go scheduler GPM modelini kullanır: G goroutine'leri, P mantıksal işlemcileri (GOMAXPROCS) ve M sistem thread'lerini temsil eder. Her P, goroutine'lerden oluşan yerel bir run queue'ya sahiptir. Bir M bir syscall'da bloke olduğunda, P ayrılabilir ve goroutine yürütmesine devam etmek için başka bir M ile ilişkilendirilebilir. Bu tasarım, minimum context switch ile verimli zamanlama sağlar.

4

cgo nedir ve hangi bağlamda kullanılmalıdır?

5

Hedef OS veya mimariye göre kodu koşullu olarak derlemeye olanak tanıyan direktif hangisidir?

+17 mülakat soruları

Bir sonraki mülakatın için Go'de uzmanlaş

Tüm sorulara, flashcards'a, teknik testlere, code review alıştırmalarına ve mülakat simülatörlerine eriş.

Ücretsiz başla