3 ms·
Java had a mixed model where it could use LWPs or kernel threads, and switched over around Solaris 8 because things like stat() were still blocking and had no a
by DamonHD 9y ago
Java had a mixed model where it could use LWPs or kernel threads, and switched over around Solaris 8 because things like stat() were still blocking and had no async counterpart, so were difficult to deal with.
I dug up this fossil the other day, trying to get a fix from Sun for this very issue:
http://d.hd.org/JavaThreadsCommentToSun19980820.html http://d.hd.org/JavaThreadsCommentToSun19980820.html
- ridiculous_fish 9y agoIs this solved in Go? A while back Go required programmers to use rate limiters, otherwise it would spawn unlimited kernel threads for blocking syscalls.
- 4ad 9y agoIt's capped at 10000 threads (configurable). Note that Go uses asynchronous I/O where possible.