On May 27, 2012, at 6:30 AM, Tim Caswell wrote: > There are already many ways to starve/block the event loop. > > You could have an infinite loop > > while (true) {} > > Or a recursive loop that blocks till the stack overflows > > function a() { > a(); > } > a(); > > Now these new semantics would add another way to do the recursive loop, > except this time the trampoline is built in and the stack doesn't overflow. > > function a() { > process.nextTick(a); > } > a(); > > If we're worried about changing the name to match the meaning and we're > worried about breaking existing code (I know I have some that accidentally > depends on the non-blocking nature), we could add a new function > process.afterTick that does the new semantics and deprecate process.nextTick. > > Then no code breaks and we eventually get the right behavior with the right > name.
This needs a different method name, if not, the sky is going to fall on our heads. And the proper name IMO would be *this*Tick not *next*Tick :-P And perhaps it should be internal, not part of the public API: _thisTick(). But that depends: exactly *where* have you seen the problem you mention, @izs? -- Jorge.