What is stale state?

自古美人都是妖i 提交于 2019-12-03 11:14:49

问题


I was reading about the object pool pattern on Wikipedia (http://en.wikipedia.org/wiki/Object_pool) and it mentions "dangerously stale state".

What exactly is "stale" state? I know state is variables/data, such as my fields and properties, but what does it mean by stale or dangerously stale?


回答1:


Stale state is information in an object that does not reflect reality.

Example: an object's members are filled with information from a database, but the underlying data in the database has changed since the object was filled.

Dangerously stale state is stale state that might adversely affect the operation of a program, i.e. causing it to perform incorrectly due to invalid assumptions about the data's integrity.




回答2:


It happens when the value stored in the object does not anymore reflect the underlying persistent value. I guess dangerously stale is just a way to say that the value is really outdated.




回答3:


"Stale state" is when an object's stored (cached) view of the rest of the system becomes out of date. Eg an object is holding a handle to some other object, but the second object has been deleted in the meantime.

Trying to dereference a stale handle can lead to big problems.

Most systems will try to automagically protect you from various reasons for ending up with stale state, but it is not always possible to cover every case. (Depending on the system.)

Larry




回答4:


Basically, it means invalid state. Usually a by-product of not notifying your instances of state change.



来源:https://stackoverflow.com/questions/1563319/what-is-stale-state

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!