0
所以我正在做的是試圖產生一個叫做transact的函數。當給出鎖[x1; x2; ...; xn],函數(f:'a - >'b)和參數(v:'a)列表,運行(fv)訪問受到鎖[x1; x2; ...; xn],它應該獲取鎖,在參數上運行該函數,並釋放鎖而不會導致死鎖。Ocaml獲取互斥鎖列表
我知道如何獲得單個互斥鎖,以下是一個示例簡單函數,但我不知道如何查看它們的列表。
method deposit(int amt):unit =
Mutex.lock mylock ;
if balance + amt < max_balance then
balance <- balance + amt ;
Mutex.unlock mylock
end
我想使用List.iter函數來通過鎖或映射來應用函數嗎?我正在使用Core.Std庫。