pub struct Task<'a> { /* private fields */ }Implementations§
Source§impl<'a> Task<'a>
impl<'a> Task<'a>
pub fn new(client: &'a Client) -> Self
Sourcepub async fn poll_task_status(
&self,
task_id: &str,
interval: u64,
max_attempts: u32,
) -> Result<TaskResult>
pub async fn poll_task_status( &self, task_id: &str, interval: u64, max_attempts: u32, ) -> Result<TaskResult>
轮询任务状态
该方法会定期查询任务状态,直到任务完成、失败或达到最大轮询次数。
§Arguments
task_id- 要轮询的任务IDinterval- 每次轮询之间的间隔时间(秒)max_attempts- 最大轮询尝试次数
§Returns
返回 Result<TaskResult>,包含最终任务结果或错误
§Errors
- 当任务在最大轮询次数内未完成时返回
TimeoutError - 当遇到不可重试的错误(如配置错误)时返回相应错误
- 当API返回空响应或格式错误时会继续重试
§Notes
- 对于可恢复的错误(如网络问题、临时API错误)会自动重试
- 每次轮询会打印当前状态信息到标准输出
Auto Trait Implementations§
impl<'a> Freeze for Task<'a>
impl<'a> !RefUnwindSafe for Task<'a>
impl<'a> Send for Task<'a>
impl<'a> Sync for Task<'a>
impl<'a> Unpin for Task<'a>
impl<'a> !UnwindSafe for Task<'a>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more