C'è qualche motivo (ad esempio: prestazioni) contro il codice di "pulizia" di uno stato mobile in uno stato finale? Esempio:
this.state.InProgress = true;
// logic here
this.state.InProgress = false;
Con stato finale:
try
{
this.state.InProgress = true;
// logic here
}
finally
{
this.state.InProgress = false;
}