实验 / 024
Java LLM 实践(九):取消请求后,旧回答为什么还会覆盖新会话?
18 种固定线程交错,验证流式预览、完成和错误回调的请求归属,以及取消和有限幂等的边界。
实验结果
01 / 问题
18 种固定线程交错,验证流式预览、完成和错误回调的请求归属,以及取消和有限幂等的边界。
方法
真实工作线程与主线程,9种固定交错×2策略,合成内存SSE复用A6解析器。
结果
18次执行:朴素策略7种违反契约,请求归属检查9种通过;另有7组边界检查。
观察
旧预览和旧错误即使没有最终覆盖页面,也可能破坏中间状态;完整回答不保证仍属于当前会话。
结论
预览、完成和失败都应在同一临界区验证请求归属并修改状态。
局限
本地固定交错,不是在线故障率;取消不保证停止计费;ID窗口仅单进程有界保留。
复现
固定代码和原始记录见仓库;正文给出运行、独立审计和回放命令。
继续探索