La question est facile, supposons que je:C# verrouillage Threading pour 2 champs d'une classe
class MyClass
{
object myObj1
object myObj2
}
Thread1(MyClass c)
{
DoALotOnMyObj1(c.myObj1);
}
Thread2(MyClass c)
{
DoALotOnMyObj2(c.myObj2);
}
Dois-je utiliser des serrures dans ce cas, même si je suis tout à fait sûr que les deux fils utiliseront seulement myObj1 (ou 2 selon le fil) et pas l'autre champ?
Est-ce une faute de frappe? Le thread 2 n'est-il pas censé faire DoALotOnMyObj2 (c.myObj2); – LukeH
Oui c'est une faute de frappe, merci pour avis –
Vous avez seulement besoin d'un verrou si myObj1 et myObj2 interagissent d'une manière qui pourrait causer des conflits lorsqu'il est utilisé simultanément. Si les deux objets sont isolés les uns des autres, vous êtes en sécurité. –