3 ms·
The warning shots across the bow where heard with this statement from the devs: "Don't replace platform/native threads with virtual ones, replace tasks (withou
by spintin 3y ago
The warning shots across the bow where heard with this statement from the devs:
"Don't replace platform/native threads with virtual ones, replace tasks (without further explanation) instead"?!
Combine that with the fact that they chose to implement the scheduler in Java instead of C(++) and you're set for performance problems.
Remember that NIO took from 1.5 to 1.7 to be usable/performant and that was native!
Edit: Finally figured out why: https://news.ycombinator.com/item?id=39010648 https://news.ycombinator.com/item?id=39010648
- bitcharmer 3y ago> Combine that with the fact that they chose to implement the scheduler in Java instead of C(++) and you're set for performance problems. Ah yes, the argument from the 1990s. It would make sense to understand where the JVM and its compiler are these days before making incorrect statements about performance. From your link: > Blocking network TCP IO needs a sychronized block to work This is utterly false.
- spintin 3y agoSo how do you implement a TCP socket? I have always had to do synchronized(something) { socketInputStream.read(); } And the dude himself says that reading from a socket is a problem if you listen to the interview.
- bitcharmer 3y agoSomething tells me you don't know much about programming in Java. Just look up any tutorial showing how to use NIO (blocking and non-blocking). Synchronized in this context is pretty nonsensical.
- kaba0 3y ago[flagged]
- MrBuddyCasino 3y ago> they chose to implement the scheduler in Java instead of C(++) and you're set for performance problems The JDK has historically used some native implementations in its stdlib (zip, imageio and others), back when the runtime wasn't as fast as it is today. But today's runtime would often be faster in Java than those native implementations.