如何确保一次在线程上调用一个函数?

时间:2017-12-01 06:59:35

标签: multithreading

我有两个线程A和B以及一些共享数据Data。两个线程都将调用函数f(),它将首先读取数据然后修改数据。 ReadData()和ModifyData()都是线程安全的,用互斥锁实现。

f(){
ReadData()
ModifyData()
}

我希望f()一次只能被一个线程调用,或者我想要整个调用ReadData()和ModifyData()。我该如何实现?我认为一种方法是在输入f后获取锁定并在退出f后释放锁定。

0 个答案:

没有答案