In SiteAction.java > actionForTemplate we have the code for importing and duplicating sites.
Case 27: has the logic for importing sites and it is safely threaded and I believe that Case 29 for duplicating sites should be threaded too. It will be handling more data than the importing of sites and could hang if duplicating especially large ones.
We have seen that site duplication can hang and even fail for very large sites dealing with lots of users/resources.
It also should only allow the button to be pressed once so the action isn't reproduced and block action until the duplication is finished.