【发布时间】:2018-10-16 03:31:02
【问题描述】:
我正在使用 java 制作一个模拟餐厅的多线程程序。我正在使用最新的 Eclipse Java Oxygen 来做到这一点。我尝试在 windows 10 和 linux mint 上运行它,总是使用 Eclipse,它在 windows 上运行良好,但是当我在 linux 上尝试 SAME 项目时它停止了。在windows和linux上运行多线程程序有什么区别吗?
谢谢
【问题讨论】:
-
是的(显然)。我们可以看看一些代码吗?
-
“它停止”是什么意思?有错误吗?您确定您的问题与并发有关,而不是某些特定于 Windows 的依赖项吗?
-
“它停止”我的意思是它卡在某一点上,但没有错误。
-
导致死锁的代码是否涉及任何IO,例如从文件读取或跨机器发送数据?如果没有更多信息,即使是一种可能性也很难确定。请创建一个MCVE,以便我们重现问题。
-
是的,它通过在日志文件上注册问题的所有状态来涉及 IO,但为了做到这一点,我正在使用我的老师提供的库,所以我认为它运作良好。跨度>
标签: java multithreading operating-system