Make post_construct_and_drain_queue() not rely on destructor ordering as much. Also acquire an auto_drainer_t::lock_t earlier for safety.
Previous commit didn't compile.