use thread-safe function