Attempt to simplify the seperate Thread implementation