我正在读关于维基百科(对象池模式http://en.wikipedia.org/wiki/Object_pool ),并提到了“危险失效状态”。
究竟什么是“过时”的状态? 我知道状态变量/数据,比如我的字段和属性,但又有什么用陈旧或过时的危险呢?
我正在读关于维基百科(对象池模式http://en.wikipedia.org/wiki/Object_pool ),并提到了“危险失效状态”。
究竟什么是“过时”的状态? 我知道状态变量/数据,比如我的字段和属性,但又有什么用陈旧或过时的危险呢?
陈旧的状态是一个对象,它并不能反映现实信息。
例如:一个对象的成员填充有来自数据库的信息,但在数据库的基础数据已经改变,因为对象填充。
危险失效状态也许是一个程序的运行产生不利影响,即导致其错误地执行由于对数据的完整性无效的假设失效状态。
它发生时,存储在对象的价值已不反映底层的持久价值。 我猜危险陈旧只是一种方式说,价值是非常不合时宜的。
“陈旧状态”是当该系统的其余部分的一个对象的存储(缓存)视图变得过时。 例如,一个对象持有的句柄,其他一些对象,但第二个对象在此期间被删除。
试图取消引用一个陈旧的手柄可能会导致大问题。
大多数系统将尝试自动地保护您免受各种原因与陈旧的状态结束了,但它并不总是能够涵盖所有情况。 (根据不同的系统。)
拉里
基本上,这意味着无效状态。 通常一个副产品不通知你的状态改变的实例。