- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个在 Windows Server 2008 上运行的 Node.js 应用程序。我在这里遇到了一个奇怪的问题。
我的应用执行多个异步任务。将数据发送到 socket.io、MySQL、HTTP 连接、TCP 连接等。
我的 Node 应用程序变得无响应,尤其是在 socket.io 端,并且只有在控制台上按下任何键后才会再次响应。这是一个已知的问题?有没有绕过这种行为?
注意:我大量使用 console.log 来跟踪当前操作和过程中的错误。
最佳答案
我做了一些背景调查并得出以下结论。
Windows Server 2008 上的 Powershell 控制台在单击时进入“暂停”模式。如果您单击其他地方,它会再次释放。 http://www.vistax64.com/powershell/112032-script-pauses-when-you-click-powershell-text-window.html
如果您注意到,console.log
是异步的。但是 console.warn
和 console.error
是阻塞的。这些不是异步的。
控制台暂停可能会阻止部分/大部分 Node.js 操作。特别是因为默认调试级别的 Socket.io 将报告的不仅仅是 console.log
。
关于在控制台上按下按键之前,Node.js 没有响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16557850/
我正在开发一个在 VS 社区 2017 中开发并使用 IIS Express 10 的 .net Core MVVC 项目,我遇到了 TempData 无法在我开发的 3 台计算机中的两台上运行的问题
我是一名优秀的程序员,十分优秀!