add async prefinish hook
option to disable destroy
1.2.0