DEV Community

loading...

Discussion on: JavaScript's Event Loop

Collapse
koresar profile image
Vasyl Boroviak

I did years of multithreading (C, C#) before NodeJS (btw, NodeJS also has thread support).

The main problem with threads is switching between them. Each switch costs a lot of memory shifting and CPU cycles. Event loop is computationally cheap.

Hence, NodeJS is high performant in I/O heavy tasks (e.g. networking).

Thread Thread
michaelcurrin profile image
Michael Author

Ah okay thanks for explaining.

Now I am curious why other languages don't do single threaded. or maybe it depends on the task and entire language setup. Or is it the difficulty of doing an event loop well that meant it took a long time for node to eventually be the first?

Thread Thread
koresar profile image
Vasyl Boroviak

Good questions. I wish I knew the answers.

Thanks for being open minded. You are a rare breed. 👍

Thread Thread
michaelcurrin profile image
Michael Author

I've updated my post to be more balanced and to point to your initial comment

Thread Thread
koresar profile image
Vasyl Boroviak

Looks great! 👍👍👍