Skip to content

异步皮卡鱼评估:避免界面卡顿,支持队列管理和进度展示 #7

@gooooloo

Description

@gooooloo

概述

将皮卡鱼(Pikafish)评估改为异步执行,避免评估过程中界面卡住。

需求详情

1. 异步评估

  • 皮卡鱼评估改为后台异步执行,UI 保持响应
  • 评估请求进入队列,逐个处理

2. 队列管理与去重

  • 维护一个待评估队列,同一个 FEN 不重复入队(去重)
  • 一个 FEN 如果已经在队列中或正在评估,再次请求时不重复添加

3. 界面展示

  • 提供界面展示当前等待皮卡鱼评估的局面列表及进度
  • 棋盘/局面界面上,如果某个 FEN 正在等待皮卡鱼评估,显示"等待评估中"状态提示
  • 正在评估的局面显示评估进度

4. 停止评估

  • 提供一个"停止评估"按钮,可以中断当前评估并清空队列

技术要点

  • 队列去重:入队前检查 FEN 是否已存在于队列或正在评估中
  • 异步架构:使用 Swift 并发(async/await 或 Combine)管理评估任务
  • UI 状态同步:评估状态变更需及时反映到界面

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions