Actually just had this problem happen. My alter database set single_user had not finished in over 6 minutes so I cancelled it and tried it again. I am not sure what was holding the database but it can take time under some circumstances.
Chris
Chris