Mit Exceptions wird zudem der Code in der Regel kompakter und übersichtlicher.
Ja, das schon, aber nur solange recht "selten" mal ein
Handle nicht geliefert werden konnte.
Wobei du aber auch die Funktionsweise von foo geändert hast.
Beim ersten foo, mit den IFs, bekommt keiner mit, ob DoSomethingWithHandles verarbeitet wurde.