golang
7 articles tagged golang.
-
Go’s G-M-P Scheduler Explained
How Go’s scheduler maps goroutines onto OS threads, uses processors, and steals work when blocking would otherwise stop progress.
-
Go’s Concurrent Garbage Collector
How Go combines tri-color marking, write barriers, and brief pauses to reclaim unreachable heap objects while goroutines keep running.
-
Go Interface Values: Dynamic Types, Values, and Typed Nil
Understand the type-and-value pair inside every Go interface and why an interface holding a typed nil is not itself nil.
-
The Go Scheduler’s G-M-P Model
How goroutines, OS threads, processors, parking, wake-ups, and work stealing cooperate to keep Go code running efficiently.
-
Go Interface Values: Dynamic Types, Values, and Nil Pointers
Go interfaces pair a dynamic type with a value, enabling method dispatch while making typed nil pointers different from nil interfaces.
-
Go’s Garbage-Collector Pacer and Mutator Assists
How Go’s GC pacer budgets marking CPU and makes allocating goroutines help when concurrent collection falls behind.
-
Go’s G-M-P Scheduler
How Go’s goroutines, OS threads, processors, run queues, and work stealing determine concurrency, latency, and throughput.