The way it was before my change would cause bitc to Abort Trap on start due to pthread_mutex_unlock not being able to find the mutexp lock. By removing the unlock in poolworker_main I assumed the additional lock after create was no longer needed.