Node.js 方法是事件驱动的,我想知道您将如何解决何时触发事件的问题?
假设我们在 Web 应用程序上有一些操作:创建一些数据、提供页面、接收数据等。
你会如何安排这些活动?在线程系统中,设计相当“简单”。您将线程专用于特定的任务集,然后走上线程同步的道路。虽然这些任务的需求量很低,但线程处于空闲状态,什么也不做。当需要他们时,他们会运行他们的代码。虽然这条路有问题,但它有据可查,并且得到了解决。
我发现很难理解 node.js 事件的处理方式。我有 10 个请求进来,但我没有创建任何数据,所以我无法提供任何服务,创建数据是一个漫长的操作,另外 5 个客户端想要发送数据。现在怎么办?
我创建了以下未经测试的代码,它基本上是一堆注册并应该执行的回调。将会有某种桩管理器将运行并决定它现在要执行哪些代码。该回调创建的所有回调都可以“自然地”添加到偶数循环中。它还应该注册它自己,以便事件循环可以将控制权交还给它。其他的东西,比如静态内容和任何可以以不同方式绑定的东西。
- 如何将回调注册为当前事件循环状态中的最后一个调用?
- 这是解决这个问题的好方法吗?