Considera questa funzione pensata per uccidere tutte le istanze in esecuzione di un sottoprocesso:
killAllFoobars()
{
pids = getRunningFoobars();
foreach ( pids as p ) {
killOneFoobar(p);
}
return TRUE;
}
Dove dovrei controllare che in realtà tutti i Foobar siano stati uccisi? Dovrebbe killOneFoobar () controllare che il suo Foobar sia ora ucciso? Dovrebbe killAllFoobars () controllare che non ci siano più Foobars in esecuzione prima di ritornare TRUE (sembra un po 'ingenuo restituire VERO senza controllo). La funzione che chiama killAllFoobars () dovrebbe controllare?
Considera che il controllo è un'operazione costosa, quindi non dovrebbe essere fatto "solo ogni volta" ma piuttosto solo quando necessario.