logoalt Hacker News

bheadmaster01/21/20251 replyview on HN

> It’s best not to acquire a mutex and launch a goroutine to read 3 bytes of data at a time.

io.Copy uses 32KB buffers. Other parts of standard library do too. If you're using Read() to read 3 bytes of data at a time, mutex is the least of your worries.

Since you seem to be ignoring sarcasm of my previous comment - just saying "don't do that" without suggesting an alternative way in the particular code context you're referring to, isn't useful at all. It's just annoying.


Replies

orf01/21/2025

It may well use 32KB buffers, or any size, but that doesn’t translate to “reading 32KB at a time”.

If you’re aborting specifically an io.Copy, then there are better ways to do that: abort in the write path rather than the read path.

It’s not my job to provide you with alternative code. That’s your job.

show 1 reply