* release the lock in the ForkHook.fire_prepare_hooks! method if an exception is raised to prevent deadlocks * in Threaded, the pause/resume methods should prune nil elements as it's possible that a cnx would have been opened/closed and then called before it could be unregistered. * in Threaded only join the shutdown thread for 30 sec
Also in 1.9.3 add a USR1 trap to give an REE-like thread printout
…tead Soooo, funny thing, I thought a weakref was only garbage collected if the object it pointed *to* was cleaned up, but it seems to be a bit less predictable than that. Anyway, just to err on the side of caution, we register a finalizer block to clear the fork subs (preventing a memory leak), rather than use weakrefs.