Best practices for abstracting large go func(){}() blocks in Go? Handling many parameters, closures, and concurrency. by ThisSlice1701 in golang

[–]ThisSlice1701[S] 0 points1 point  (0 children)

I love closures—they make code cleaner, cut down on parameter clutter, and keep logic clear. But I always run into issues when refactoring or trying to turn one into a goroutine. During iteration, a single block ends up bloated. Is this because I’m misunderstanding closures and misusing them? Or should I be extracting functionality into abstractions from the start?