订阅过期恢复后补跑被搁置的 consume
- apps/ai-game-creator-shell/src/view/project-development/chat/controller/useDirectThreadChatSubscription.ts 在 consume 的 finally 之后补一次 consumeAgain 重排 - SUBSCRIPTION_EXPIRED 恢复期间到达的通知会因 consuming 仍为 true 只置位 consumeAgain,而 do/while 已因异常退出,原先这批事件要等下一次通知才会被消费
This commit is contained in:
+6
@@ -117,6 +117,12 @@ export function useDirectThreadChatSubscription({
|
||||
} finally {
|
||||
consuming = false;
|
||||
}
|
||||
// 订阅过期恢复期间到达的通知只会把 consumeAgain 置位(此时 consuming 仍为 true),
|
||||
// 而 do/while 已经因异常退出;这里补一次重排,否则这批事件要等下一次通知才被消费。
|
||||
if (!disposed && consumeAgain) {
|
||||
consumeAgain = false;
|
||||
void consume();
|
||||
}
|
||||
}
|
||||
async function bootstrap() {
|
||||
const result = await invoke<DirectThreadSubscriptionBootstrap>(
|
||||
|
||||
Reference in New Issue
Block a user