Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/xamarin/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Xamarin c#:锁在同一个锁内_Xamarin_Concurrency_Locking - Fatal编程技术网

Xamarin c#:锁在同一个锁内

Xamarin c#:锁在同一个锁内,xamarin,concurrency,locking,Xamarin,Concurrency,Locking,我有锁的问题,如果我有代码A和B,其中A有一个锁调用代码B谁也有相同的锁。此操作是否会在将来导致问题 method CodeA () { lock(A) { CodeB (); } } method CodeB () { lock(A) { some database code. } } 我问这个问题的原因是我目前在应用程序中遇到了一些崩溃,并且看到有一个如上所述的锁。当我点击列表视图时,崩溃通常很快就会发生。在我移除上面代码中的锁后,崩溃似乎没

我有锁的问题,如果我有代码A和B,其中A有一个锁调用代码B谁也有相同的锁。此操作是否会在将来导致问题

method CodeA () {
    lock(A) {
       CodeB ();
    }
}

method CodeB () {
  lock(A) {
    some database code.
  }
}

我问这个问题的原因是我目前在应用程序中遇到了一些崩溃,并且看到有一个如上所述的锁。当我点击列表视图时,崩溃通常很快就会发生。在我移除上面代码中的锁后,崩溃似乎没有发生,我的意思是还没有。。。。。如果一切正常,我会连续尝试一两个小时,我认为这是个问题

这不是问题,因为.NET
Monitor
s以及
lock
语句都是递归的。 如果不是这样,您也会看到这里出现死锁,而不是崩溃。 =>您的崩溃一定有其他原因