Imagin that the response of the client tells me to stop the worker thread, so I sotp it, but the timer is still sending messages. Then, one of the responses can tell me to start the thread anagin.
Well, why can't you stop the time when you stop the worker thread?

Stops ok but it don't start again.
But where is the problem?
If you receive a message from the socket to start the thread again, what stops you from restarting your thread again?