问一个进程相关的问题,js?

声明一个空数组,开四个进程同时给数组中push值,这个push进去的顺序是怎样的?

阅读 2.5k
4 个回答

没有听说过js有多进程的说法,没法同时修改一个数组。你可以贴个代码让其他大牛看看

你用NodeJS写吧

简单实验了以下,多个进程(任务)操作时,数组的值取决于最后一个的进程。我使用 2个 setTimeout 和 1个
setInterval 同时操作一个数组,并分别 push 进 1、2、3 三个值,最终得到的结果是:

[1, 2, 3, 3, 1, 1, 3, 1, 1, 3]

阮一峰 大神的文章中有明确的解释:单线程就意味着,所有任务需要排队,前一个任务结束,才会执行后一个任务。如果前一个任务耗时很长,后一个任务就不得不一直等着。查看原文

去测试一下就知道了啊,每push成功一次打印一下此数组

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏