|
|
|
|
|
by mhink
3156 days ago
|
|
The worker pooling system you describe is eminently possible in the browser these days. Web Workers [1] are really just threads with a JS execution context and a facility for messaging back to the thread which created them. (Or, if you set them up with a MessageChannel [2], they can do full-duplex messaging with any thread that gets the other end of the pipe) Of course, you're still dealing with the event loop in most cases, which is probably a stumbling block when it comes to really low-level stuff. That said, there are even facilities for shared memory and atomics operations [3] these days, which helps. I've messed around with it a little bit on a side project- as a JS developer, it's really weird and fun to say "screw the event loop!" and just enter an endless synchronous loop. :D [1] https://developer.mozilla.org/en-US/docs/Web/API/Worker
[2] https://developer.mozilla.org/en-US/docs/Web/API/MessageChan...
[3] https://developer.mozilla.org/en-US/docs/Web/JavaScript/Refe... |
|