https://stackoverflow.com/questions/10673585/start-thread-with-member-function