more thread-safe doc