我参考了许多文章来了解线程安全。但最后处于迷茫状态,于是想寻求专家建议。
我正在尝试加密和解密字符串。我在EncryptDecrypt
类中得到了两种Encrypt
和Decrypt
的方法,我需要在许多类中使用它。因此,我可以创建一个如下所示的静态方法,而不是创建一个实例和每个类,它是否是线程安全的?
public static string Decrypt(string input)
{
string decrypted = "";
try
{
EncryptDecrypt crypto = new EncryptDecrypt();
decrypted = crypto.AESDecrypt(input);
}
catch (Exception ex)
{
throw new Exception("failed", ex);
}
return decrypted;
}
有人可以指导我通过吗?或者请参考任何关于线程安全的好文章。
是的,它将是线程安全的,因为您为所有线程传递不同的输入值,并且每个函数都有不同的范围。