MemoryCache的UpdateCallback损坏,仅适用于过期项目

时间:2019-06-27 00:43:14

标签: c# callback memorycache

MemoryCache UpdateCallback似乎仅对过期的项目触发。

请考虑以下测试代码:

function badRenderFn(field1: FormField, field2: FormField) {
  const renderFn1 = assertNarrowFunction(fieldMapping[field1.type]);
  renderFn1(field2.data); // no error!!! ooops
}

运行此代码 OnCacheItemUpdate 只会在该项目在〜15秒后过期时触发,但在从1-> 2替换后不会触发。

这对我来说似乎是个错误,因为CacheEntryUpdateArguments.RemovedReason可以是其他,然后是Expired。 RemovedCallback的行为符合预期。

到期时间似乎也有些延迟,从未精确到15秒。

这是一个已知的错误,还是设计使然?还是我错过了什么?

0 个答案:

没有答案