data layer pthread function fix