小编and*_*her的帖子

"不可变的字符串是线程安全的"是什么意思

我最近开始阅读C#中的可变和不可变对象,并且我发现无论我在哪里读取的常量是帽子是不可变的,当用作哈希表中的键时,使得线程安全且有用,但是我不理解的是,就概念而言虽然我们无法更改内容,但我们可以更改以下内容:

string s = "Hi";
s = "Bye";
Run Code Online (Sandbox Code Playgroud)

虽然在这里s的引用被改为"Bye",但主要的是s的内容(或者更确切地说是指向的内容)已经改变,并且从编程的角度来看是相同的,所以这是怎么回事如果字符串被更改,使一个特定的函数线程安全或可用于哈希表?

c# immutability thread-safety

5
推荐指数
1
解决办法
970
查看次数

标签 统计

c# ×1

immutability ×1

thread-safety ×1