J'apprends multi-threading en C# et j'ai vu un code ci-dessousNested verrouillage en C#
static readonly object _locker = new object();
static void Main()
{
lock (_locker)
{
AnotherMethod();
// ...some work is going on
}
}
static void AnotherMethod()
{
lock (_locker) { Console.WriteLine ("Another method"); }
}
Je me demande quand est-il besoin d'utiliser le verrouillage imbriqué? Pourquoi n'utilisez-vous pas une seule serrure dans ce cas?
si 'AnotherMethod' est utilisé ailleurs aussi (et non seulement dans' Main') ... – Yahia
Le code est vraiment redondant. Le verrou extérieur (_locker) n'est pas nécessaire. Sauf si AnotherMethod() est public et utilisé depuis un autre endroit. – Matthias