impl Simple Thread for easier and more robust use