确保 callback 异步调用