Xamarin c#:锁在同一个锁内
我有锁的问题,如果我有代码A和B,其中A有一个锁调用代码B谁也有相同的锁。此操作是否会在将来导致问题Xamarin c#:锁在同一个锁内,xamarin,concurrency,locking,Xamarin,Concurrency,Locking,我有锁的问题,如果我有代码A和B,其中A有一个锁调用代码B谁也有相同的锁。此操作是否会在将来导致问题 method CodeA () { lock(A) { CodeB (); } } method CodeB () { lock(A) { some database code. } } 我问这个问题的原因是我目前在应用程序中遇到了一些崩溃,并且看到有一个如上所述的锁。当我点击列表视图时,崩溃通常很快就会发生。在我移除上面代码中的锁后,崩溃似乎没
method CodeA () {
lock(A) {
CodeB ();
}
}
method CodeB () {
lock(A) {
some database code.
}
}
我问这个问题的原因是我目前在应用程序中遇到了一些崩溃,并且看到有一个如上所述的锁。当我点击列表视图时,崩溃通常很快就会发生。在我移除上面代码中的锁后,崩溃似乎没有发生,我的意思是还没有。。。。。如果一切正常,我会连续尝试一两个小时,我认为这是个问题 这不是问题,因为.NET
Monitor
s以及lock
语句都是递归的。
如果不是这样,您也会看到这里出现死锁,而不是崩溃。
=>您的崩溃一定有其他原因