Devtrovert
Subscribe
Sign in
Home
Golang
System Design
Archive
Newsletters
About
Latest
Top
Discussions
Go EP20: sync.Cond, the Most Overlooked Sync Mechanism
In Go, sync.Cond is a synchronization primitive, though it’s not as commonly used as its siblings like sync.Mutex or sync.WaitGroup. You’ll rarely see…
10 hrs ago
•
Phuong Le
Share this post
Go EP20: sync.Cond, the Most Overlooked Sync Mechanism
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
Go EP19: sync.WaitGroup and The Interesting Alignment Problem
When you have multiple tasks that can run concurrently, you often use goroutines to handle them.
Oct 22
•
Phuong Le
Share this post
Go EP19: sync.WaitGroup and The Interesting Alignment Problem
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
Go EP 18: Slice Is Basically an Array Wrapper
When you create a slice, you're really just making a 'window' into an existing array. So, any changes you make to the slice can also change the…
Oct 8
•
Phuong Le
2
Share this post
Go EP 18: Slice Is Basically an Array Wrapper
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
September 2024
Go EP17: The Architecture of Go's sync.Pool
Instead of throwing these objects away after each use, which would just make the garbage collector work harder, we’re better off keeping them in a pool.
Sep 17
•
Phuong Le
1
Share this post
Go EP17: The Architecture of Go's sync.Pool
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
Go EP16: How Go Handles Key-Value Pair Storage in Maps
Have you ever set a ‘hint’ for a map and wondered why it’s called a ‘hint’ and not something simple like length, like we do with slices?
Sep 10
•
Phuong Le
2
Share this post
Go EP16: How Go Handles Key-Value Pair Storage in Maps
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
Go EP 15: sync.Mutex - Normal and Starvation Mode
Mutex, or MUTual EXclusion, in Go is basically a way to make sure that only one goroutine is messing with a shared resource at a time. This resource can…
Sep 2
•
Phuong Le
2
Share this post
Go EP 15: sync.Mutex - Normal and Starvation Mode
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
August 2024
Go EP14: Heap-allocated Defer, Stack-allocated Defer, Open-coded Defer
The defer statement in Go actually comes in three flavors: open-coded, heap-allocated, and stack-allocated. Each has its own performance quirks and use…
Aug 20
•
Phuong Le
Share this post
Go EP14: Heap-allocated Defer, Stack-allocated Defer, Open-coded Defer
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
GO EP13: Vendoring, or go mod vendor: What Is It?
Vendoring is a different strategy as it keeps a copy of all your project’s dependencies directly within the project’s directory, rather than relying on…
Aug 6
•
Phuong Le
1
Share this post
GO EP13: Vendoring, or go mod vendor: What Is It?
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
June 2024
GO EP12: Go.mod File - Boring Stuff Made Easy
There are several directives we will talk about, including: module, go, require, exclude, replace, retract, and a new one, toolchain."
Jun 25
•
Phuong Le
Share this post
GO EP12: Go.mod File - Boring Stuff Made Easy
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
GO EP11: Go Commands - go get, go mod tidy,...
The go.mod file, or go module, is basically a way to organize and manage a bunch of Go packages together.
Jun 17
•
Phuong Le
4
Share this post
GO EP11: Go Commands - go get, go mod tidy,...
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
GO EP10: GOROOT, GOPATH, GOCACHE
For instance, you might wonder what `GOPATH` and `GOROOT` mean, or what happens when you use commands like `go get` or `go mod tidy`.
Jun 10
•
Phuong Le
8
Share this post
GO EP10: GOROOT, GOPATH, GOCACHE
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
2
April 2024
Go EP9: How to Gracefully Shut Down Your Application
When we talk about gracefully shutting down an application, there are a few key guarantees we aim to achieve:
Apr 12
•
Phuong Le
Share this post
Go EP9: How to Gracefully Shut Down Your Application
blog.devtrovert.com
Copy link
Facebook
Email
Note
Other
Share
Copy link
Facebook
Email
Note
Other
This site requires JavaScript to run correctly. Please
turn on JavaScript
or unblock scripts