singleton implemented by pthread_once, only in linux platform