
Go Tingkat Lanjut
Internal compiler, runtime, scheduler, cgo, package unsafe, assembly, build tags
1Tool toolchain Go mana yang memungkinkan inspeksi kode assembly yang dihasilkan oleh compiler?
Tool toolchain Go mana yang memungkinkan inspeksi kode assembly yang dihasilkan oleh compiler?
Jawaban
Perintah go tool compile -S menampilkan kode assembly yang dihasilkan oleh compiler Go. Tool ini penting untuk memahami optimasi compiler dan menganalisis kode yang kritis terhadap performa. Juga dimungkinkan untuk menggunakan go build -gcflags=-S untuk mendapatkan hasil yang sama selama build standar.
2Apa tujuan utama package unsafe di Go?
Apa tujuan utama package unsafe di Go?
Jawaban
Package unsafe memungkinkan untuk melewati sistem tipe Go guna melakukan operasi memori tingkat rendah. Package ini menyediakan fungsi seperti Pointer, Sizeof, Alignof, dan Offsetof yang memungkinkan manipulasi alamat memori secara langsung. Penggunaannya tidak disarankan kecuali untuk kasus tertentu seperti interoperabilitas dengan kode C atau optimasi kritis.
3Bagaimana scheduler Go (GPM) mengatur eksekusi goroutine?
Bagaimana scheduler Go (GPM) mengatur eksekusi goroutine?
Jawaban
Scheduler Go menggunakan model GPM: G mewakili goroutine, P mewakili prosesor logis (GOMAXPROCS), dan M mewakili thread sistem. Setiap P memiliki run queue lokal berisi goroutine. Ketika sebuah M terblokir pada syscall, P dapat dilepaskan dan dikaitkan dengan M lain untuk melanjutkan eksekusi goroutine. Desain ini memungkinkan penjadwalan yang efisien dengan context switch minimal.
Apa itu cgo dan dalam konteks apa sebaiknya digunakan?
Direktif mana yang memungkinkan kompilasi kode secara kondisional berdasarkan OS atau arsitektur target?
+17 pertanyaan wawancara
Topik wawancara Go lainnya
Dasar-Dasar Go
Struktur Data Go
Interface Go
Penanganan Error
Dasar-Dasar Goroutine
Channels
Go Modules
Server HTTP
Klien HTTP
Enkoding JSON
Database/SQL
Paket context
Testing
Pola Concurrency
Primitif Sinkronisasi
Framework web Go
Desain API REST
gRPC
Reflection
Manajemen Memori
Optimasi Performa
Generics
Go Design Patterns
Microservices
Keamanan dan Autentikasi
Docker & Containerization
Kubernetes Basics
Pengembangan CLI
Kuasai Go untuk wawancara berikutnya
Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.
Mulai gratis