4 ms·
Node.js is concurrent - you can have multiple paths of execution at the same time. It's just that Node.js concurrency has non-preemptive context switch at well
by ww520 15y ago
Node.js is concurrent - you can have multiple paths of execution at the same time. It's just that Node.js concurrency has non-preemptive context switch at well defined points - function boundary, thus no need for lock, whereas preemptive concurrency can context switch at any point and thus needs lock.
- vvcephei 15y ago_That_ I did not know. Thanks!
- spullara 15y agoThere are multiple paths of execution your code but they are never running concurrently. Only the underlying I/O is really executing concurrently with your code.
- ww520 15y agoMultiple paths of execution is concurrency. I guess what you intended to mean was parallelism, which is different from concurrency. A multi-threaded program running on a single core system has only one path executed at any given time, but we still call it a concurrent program.
- spullara 15y agoConcurrency is a superset and includes parallelism. What we both really mean is that it uses at most one core at a time to execute your code. http://en.wikipedia.org/wiki/Concurrency_(computer_science) http://en.wikipedia.org/wiki/Concurrency_(computer_science)