Hacker News new | ask | show | jobs
by nrdvana 277 days ago
Maybe the large number of standard library functions that operate on globals and require you to remember the "_r" variant of that function exists, or the mess with handling signals, or the fact that Win32 and Posix use significantly different primitives for synchronization? Or maybe just the fact that most libraries for C/++ won't have built-in threading support and you need to synchronize at each call site?

Unless I'm writing Java, I avoid multithreading whenever possible. I hear it's also nice in Go.

1 comments

Go is kind of broken here, since multithreading is one of extremely few ways to cause UB in Go.

Rust is very much best in class here.