Arne Goedeke wrote:
What kinds of things can safely be done from within destroy() and should we document them?
Well, I for one, "discovered" that *if* any code in destroy() can throw an exception, you must explicitly catch it, because if you don't the exception will be raised and (sometimes/always?) silently discarded.