Constructors in general
Don't pass 'this' out of a constructor
this
reference to be passed to another object
before the object is fully constructed
There's nothing wrong with creating a thread object in a constructor or static initializer - just don't start it there.
The alternative to starting a thread in the constructor is to simply start the thread in an ordinary method instead.