c# - 这是下面的静态方法线程安全吗?有人可以指导我如何使其线程安全吗?
问题描述
我参考了很多文章来了解线程安全。但最后处于迷茫状态,于是想到请教专家。
我正在尝试加密和解密一个字符串。我在课堂上有两种方法Encrypt
,我需要在很多课堂上使用它。因此,我可以创建一个像下面这样的静态方法,而不是创建一个实例和每个类,它会是线程安全的吗?Decrypt
EncryptDecrypt
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;
}
有人可以指导我吗?或者请参考任何关于线程安全的好文章。
解决方案
是的,这将是线程安全的,因为您为所有线程传递了不同的输入值,并且每个函数都有不同的范围。
推荐阅读
- jenkins - Jenkins安装windows 10“服务登录密码”|我在本地策略登录服务中添加了管理员用户但不知道密码
- docker - 了解 Windows 上的 Minikube 是如何运行的
- android - Android 使用 Google Drive 将房间数据库文件的备份还原到 Android
- google-visualization - 角度谷歌图表图例在角度 12 中不起作用
- python - 如何对连续时间序列的值进行聚类
- javascript - JavaScript 的原型继承是如何工作的?
- python - SortedList 没有找到它包含的元素,而 list 有
- android - 如何从base64字符串显示PDF
- docker - bin/sh: 1: webpack: 未找到
- java - Spark Dataset Foreach 函数不迭代