我是 Haskell 和 STM 的新手,我正在尝试理解基本概念。
一般来说,在 Haskell 和函数式编程中,如果我错了,请纠正我,没有赋值之类的东西。
我不能写x=3;
我所能做的就是用x
and生成另一个绑定3
。
现在谈到 TVar 和线程,如果我有多个线程共享同一个 TVar,如果一个线程更改值,使用writeTVar
,其他线程将看到更改的值,对吗?
所以如果我有 2 个线程共享同一个TVar Int
var,第一个线程加 1,如果成功,第二个线程会看到更新的值吗?
塔克斯