【问题标题】:Java static method and thread safetyJava静态方法和线程安全
【发布时间】:2013-07-05 00:09:12
【问题描述】:

我有以下问题:

如果在servet 的doPost 方法中,我创建了一些局部变量并将它们传递给另一个使用它们的类的静态方法并返回一些东西...当多个线程访问doPost 方法、创建局部变量并传递thouse 变量时会发生什么到静态方法?

线程安全吗?

【问题讨论】:

  • 如果传递的值是基于对象的,并且静态方法不会将引用保存在静态变量中,所以它是线程安全的

标签: java thread-safety


【解决方案1】:

在堆栈上传递参数并创建局部变量,每个线程都有自己的堆栈。所以它们是线程安全的。

当然,它们指向的对象可能是共享的,会造成线程同步问题。

【讨论】:

  • 当然假设静态方法本身是线程安全的并且不使用任何静态变量或愚蠢的非同步静态对象。
  • 这可能对你来说很有趣:stackoverflow.com/questions/616601/…
猜你喜欢
  • 1970-01-01
  • 2014-09-16
  • 2010-11-08
  • 2018-01-17
  • 2012-02-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多