gpt4 book ai didi

java - Java中的多个线程导致问题

转载 作者:行者123 更新时间:2023-11-29 04:04:15 27 4
gpt4 key购买 nike

对于另一个含糊的例子很抱歉...但我有一个类,我正在其中启动一个新的线程实例。但是,如果我添加一个新的线程实例,它会中断(破坏?)第一个。

但是,如果我运行该类的两个实例(分别,在我将它们转换为 jar 文件之后),其中每个实例只打开一个线程,它们会同时运行并且运行良好。

我确信错误是我实现多线程的方式。

有什么要寻找的东西的建议吗?谢谢!抱歉这个含糊的例子。

最佳答案

您不能假设任意类都是线程安全的。

类的作者应该明确他们的类的线程安全性,但他们不这样做的情况很常见。鉴于 Servlet 等环境本质上可能是多线程的,这可能是一个真正的问题。

您需要研究该类并发现哪些方法(如果有)是线程安全的。类 InstanceOfClassIDontControl 可能具有被多线程访问混淆的静态变量。如果您不仅无法控制该类,甚至连其来源都看不到,那么您将需要所有者的支持。

关于java - Java中的多个线程导致问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1241387/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com