This reverts commit 2222491c21. The thread lifetime ops need to use sh_ptrs because apparently the thread objects go out of scope at some point during shutdown, before the threads can actually finish shutting down.
2222491c21