
Primitif Sinkronisasi
sync.Mutex, RWMutex, Once, Pool, Map, Cond, operasi atomik
1Apa itu sync.Mutex di Go?
Apa itu sync.Mutex di Go?
Jawaban
Sebuah sync.Mutex (mutual exclusion lock) adalah primitif sinkronisasi yang memastikan hanya satu goroutine yang dapat mengakses critical section pada satu waktu. Memanggil Lock akan memblokir hingga mutex tersedia, dan Unlock melepaskannya untuk goroutine lain. Gunakan untuk melindungi akses bersamaan ke data bersama.
2Apa yang terjadi jika kita lupa memanggil Unlock setelah Lock pada sync.Mutex?
Apa yang terjadi jika kita lupa memanggil Unlock setelah Lock pada sync.Mutex?
Jawaban
Lupa Unlock menciptakan potensi deadlock karena goroutine lain akan menunggu tanpa batas untuk memperoleh mutex. Praktik terbaiknya adalah menggunakan defer untuk memastikan Unlock akan dipanggil bahkan saat terjadi panic. Selalu pasangkan Lock dan Unlock dalam scope yang sama untuk menghindari kebocoran lock.
3Apa perbedaan utama antara sync.Mutex dan sync.RWMutex?
Apa perbedaan utama antara sync.Mutex dan sync.RWMutex?
Jawaban
sync.RWMutex memungkinkan banyak pembacaan bersamaan melalui RLock tetapi hanya satu penulisan eksklusif melalui Lock. Ini meningkatkan performa untuk skenario yang banyak membaca karena para pembaca tidak saling memblokir. Gunakan RWMutex ketika pembacaan sering dan penulisan jarang.
Mengapa menggunakan defer dengan Unlock pada sync.Mutex?
Kapan sebaiknya memilih sync.RWMutex dibanding sync.Mutex?
+19 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
Framework web Go
Desain API REST
gRPC
Reflection
Manajemen Memori
Optimasi Performa
Generics
Go Design Patterns
Microservices
Keamanan dan Autentikasi
Docker & Containerization
Kubernetes Basics
Go Tingkat Lanjut
Pengembangan CLI
Kuasai Go untuk wawancara berikutnya
Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.
Mulai gratis