Servlet不是线程安全的。因此,如果我使用类的静态函数,当多个请求同时出现时会发生什么。他们将如何处理静态函数?
答案 0 :(得分:4)
如果访问共享的可变数据,则必须同步它。如果数据是不可变的或只读的或在堆栈上你应该没问题。
答案 1 :(得分:1)
这取决于你有什么样的静态方法,无论它是否是无状态的。如果它是无状态的,并且没有引用方法范围之外的任何东西,那么它将是线程安全的。
答案 2 :(得分:0)
如果在servlet中使用静态方法,则需要使它们成为线程安全的 当变量的状态可能改变时,仅使用局部变量 如果他们不改变或使用同步访问方法
,则使用静态变量你可以通过实现SingleThreadModle接口或'synchronize'构造来保证函数线程安全。