gpt4 book ai didi

java - Shiro 的 DefaultPasswordService 线程安全吗?

转载 作者:搜寻专家 更新时间:2023-11-01 02:42:55 25 4
gpt4 key购买 nike

我可以拥有一个 DefaultPasswordService 实例并调用它的 encryptPassword() 方法而不用担心线程安全问题吗?

文档没有说清楚。

最佳答案

是的,你可以。您可以通过 reading the source code 轻松验证这一点:

public String encryptPassword(Object plaintext) {
Hash hash = hashPassword(plaintext);
checkHashFormatDurability();
return this.hashFormat.format(hash);
}

可能发生的最糟糕的事情是 checkHashFormatDurability 方法多次打印警告,但 encryptPassword 方法将始终按预期工作。

但是请注意,DefaultPasswordService 本身不是线程安全的,无论是在构建之后还是在调用 setter 时。因此,您需要担心 safe publication在多线程中使用共享实例之前。

关于java - Shiro 的 DefaultPasswordService 线程安全吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29835347/

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