Grazie mille! Non conoscevo l'istruzione lock. Se ho capito bene si usa semplicemente chiamando:

lock (variabileContesa)
{
...
}

Dove tra le graffe va messo il codice da eseguire prima che la variabileContesa venga rilasciata, giusto? Immagino che tra le graffe posso metterci anche codice che legge e scrive sulla variabile contesa, vero?

Grazie ancora.

Ciao