V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lawlietxxl
V2EX  ›  Node.js

Nodejs 问题: nodejs 资源同步的问题

  •  
  •   lawlietxxl · 2015-12-13 19:51:18 +08:00 · 2787 次点击
    这是一个创建于 3268 天前的主题,其中的信息可能已经有所发展或是发生改变。

    nodejs 单线程是不需要考虑资源同步吗?
    最简单的一个例子(因为 nodejs 是基于事件的):

    触发事件 A 的时候:
    if(someArray.length == 2)
    do something;

    触发事件 B 的时候:
    someArray.push(o);

    假如某个时候,几乎同时触发事件 A 和 B :
    结果 1 ):完全执行完某个事件的代码,再执行另一个事件
    结果 2 ):资源不同步。。

    求解……谢谢各位。

    5 条回复    2015-12-14 09:01:52 +08:00
    dqh3000
        1
    dqh3000  
       2015-12-13 20:21:19 +08:00
    单线程
    结果 1
    chemzqm
        2
    chemzqm  
       2015-12-13 20:33:04 +08:00   ❤️ 1
    除非你用 cluster ,否则事件只可能一个接一个执行, event loop 就这么简单
    whimsySun
        3
    whimsySun  
       2015-12-13 21:27:35 +08:00
    不可能存在这个问题咯
    indexof
        4
    indexof  
       2015-12-13 22:48:20 +08:00
    单线程,就意味着,一个时刻只做一件事。也就是说每次只执行一个函数。
    will0404
        5
    will0404  
       2015-12-14 09:01:52 +08:00 via iPhone
    是一个接一个执行的 如果你需要严格的执行顺序 那就用回调嵌套
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2771 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:49 · PVG 20:49 · LAX 04:49 · JFK 07:49
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.