
Security News
Meet Socket at Black Hat Europe and BSides London 2025
Socket is heading to London! Stop by our booth or schedule a meeting to see what we've been working on.
github.com/drgrib/go_concurrency_patterns_2012
Advanced tools
The code in this repository implements and orders all the major code examples referenced in Rob Pike's talk found here.
I have refactored it for clarity when possible as well as implemented enhancements.
fanIn FunctionIn the talk, Pike only covers a version of fanIn with a set number of two input channels. I implement two versions that can accept an arbitrary number of channels:
variadicFanIn in 07_variadicFanIn.gosliceFanIn in 08_sliceFanIn.goIn 11_sliceSelect.go, I iterate on this to have one just call the other.
selectPike only covers use of select for a set number of channels. I implement a select on an arbitrarily sized slice of input channels in 11_sliceSelect.go.
Pike gets to Google 3.0 in his talk, which uses two replicas of each type of his simulated Google search. On my machine, this version still regularly failed the 80ms timeout. So I created a version in 17_googleSearch.go called Google3_5 that uses slices of 10 replicas per type and, not surprisingly, gets better performance than Pike's final version in the talk, sometimes sub-millisecond on my machine.
FAQs
Unknown package
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
Socket is heading to London! Stop by our booth or schedule a meeting to see what we've been working on.

Security News
OWASP’s 2025 Top 10 introduces Software Supply Chain Failures as a new category, reflecting rising concern over dependency and build system risks.

Research
/Security News
Socket researchers discovered nine malicious NuGet packages that use time-delayed payloads to crash applications and corrupt industrial control systems.