xinglie / xinglie.github.io

blog
https://xinglie.github.io
153 stars 22 forks source link

并发记录 #112

Open xinglie opened 11 months ago

xinglie commented 11 months ago

并发>递归>普通代码

View#stable

如果一个view通过assign接收外部参数受控

则该view所有与异步相关的地方均需要通过stable检测,确保view在稳定状态下才进入后续的处理

否则后续拿到的数据会不正确

复现

view接收到外部数据后,在某个时刻异步,比如在render中渲染界面

在异步结束前,又通过过assign接收到新的参数

此时mark的工作是正常的,但是参数不是

这是一个持续追踪了1年半的问题