The callback may be called from multiple threads