fix(mp): 修复并发请求饥饿导致开发者工具卡死
- 长轮询走独立通道(requestUnlimited),不再占用 ConcurrencyLimiter 槽位 - ConcurrencyLimiter 上限 8→12,缓解 TabBar 切换请求风暴 - 新增 safeReLaunch 去重,防止并发 401 多次触发页面跳转 - maxFailures 50→10,后端不可用时快速止损而非持续 18 分钟重试 根因:咨询页长轮询每次占用槽位 25-30s,8 个槽位被占满后 所有新请求排队等待,叠加 401 场景形成死锁。
This commit is contained in:
@@ -10,7 +10,7 @@ interface LongPollOptions<T> {
|
||||
enabled: boolean;
|
||||
/** 成功轮询间隔 ms,默认 3000 */
|
||||
intervalMs?: number;
|
||||
/** 连续失败上限,默认 50 */
|
||||
/** 连续失败上限,默认 10 */
|
||||
maxFailures?: number;
|
||||
}
|
||||
|
||||
@@ -27,7 +27,7 @@ export function useLongPolling<T>({
|
||||
onData,
|
||||
enabled,
|
||||
intervalMs = 3000,
|
||||
maxFailures = 50,
|
||||
maxFailures = 10,
|
||||
}: LongPollOptions<T>) {
|
||||
const generation = useRef(0);
|
||||
const mountedRef = useRef(true);
|
||||
|
||||
Reference in New Issue
Block a user