In general, it is best to be gentle with what you do in a constructor.
Your object is still in an invalid state, so you don't want anybody to have access to it. When you start a thread from a constructor, it will likely have a reference to the object that is being constructed (otherwise why is the constructor starting it?). This reference will point to an invalid object when the thread starts and soon after it will become valid. There is an immediate potential for horrible race conditions there.
Here is a link to a good article about it http://www.ibm.com/developerworks/java/library/j-jtp0618/index.html