I1.06.3user-initiated abandon wait设计

用户可主动放弃等待

别名: 放弃等待 · 取消请求 · cancel wait

概念解释

系统有一只超时钟,用户还需要一只自己的钟:主动放弃等待。人决定不再等,不必熬到产品超时,也不必杀进程。放弃是等待态上的一等操作,和「继续等」并列。没有它,超时策略只保护了服务器,没有把控制权交给正在盯着转圈的人。

这条管的是「我现在不想等了」的出口。取消是否真正杀掉服务端工作,是加载取消那一组的事;这里先保证出口存在,并且离开等待。

机制

等待把人绑在一条自己没有进度控制的路上。注意上限一到,人会用系统级手段逃:回桌面、滑掉应用、关页。那些逃法副作用大——可能把整次会话拆掉,也可能没通知到请求。产品内的放弃把逃法降级为一次合法状态转移:停止监测、恢复可操作界面、让人去做下一件已经想做的事。

放弃还修复权力不对称。超时时刻是系统选的;人的耐心、现场干扰、发现点错了,都发生在那只钟之前。只提供系统超时,等于只承认一种结束等待的理由。

边界

不可中断的安全握手(支付与银行的那几秒)可以暂时没有放弃,但必须极短,并在开始前说明。放弃若只关界面、请求仍在改数据,出口是假的——人以为没做成,服务端做成了。那种假出口比没有出口更危险,要么做成真取消,要么文案写成「已停止显示进度,任务可能仍在进行,去任务列表查看」。模态进度把放弃藏在系统返回键里,等于没提供。

怎么落地

  • 任何超过连续性阈值、用户还在看的等待,提供可见的放弃(取消、关闭、返回),不靠操作系统手势当唯一出口。
  • 放弃之后立即离开等待态,主界面可操作。不要把取消做成「取消中…」再卡几秒。
  • 若不能保证服务端停手,放弃后的文案要承认可能仍在进行,并给出查询处。
  • 验证:开始一次慢请求,点取消。应立刻回到可操作界面。再测系统返回键、点遮罩外侧,三条路都应能离开等待,而不是只有一条藏着的路。

延伸

  • 同组I1.06.1 超时时长需按操作类型分别设定 · I1.06.2 超时后的状态需明确而非停留在等待
  • 相邻I2.06 等待中的取消 · I1.03 注意力保持上限
  • 站内检索abandon wait · cancel request · user-initiated timeout

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/I1.06.3