thread starts before the assignment of variables

Changed the order of the member assignments since the thread may start before the parameters are assigned. This especially happens when the OSX scheduler is very busy.