首页 > 解决方案 > 这是下面的静态方法线程安全吗?有人可以指导我如何使其线程安全吗?

问题描述

我参考了很多文章来了解线程安全。但最后处于迷茫状态,于是想到请教专家。

我正在尝试加密和解密一个字符串。我在课堂上有两种方法Encrypt,我需要在很多课堂上使用它。因此,我可以创建一个像下面这样的静态方法,而不是创建一个实例和每个类,它会是线程安全的吗?DecryptEncryptDecrypt

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;
}

有人可以指导我吗?或者请参考任何关于线程安全的好文章。

标签: c#asp.net-corethread-safety

解决方案


是的,这将是线程安全的,因为您为所有线程传递了不同的输入值,并且每个函数都有不同的范围。


推荐阅读