Может ли кеш (или другие переменные) измениться во время выполнения кода?

Это может быть просто теоретический вопрос, но я не смог найти на него удовлетворительного ответа .

Я использую кеш на одном из своих сайтов, что заставило меня задуматься о его данных и о том, когда и если они изменятся. Может ли кеш измениться во время выполнения некоторого кода?

Вот пример

if (Cache["name"] != null) {

    // Long and heavy code execution done here

    if (Cache["name"] == null) Response.Write("Lost the data");
}

Может ли процесс, который изменяет кеш, работать параллельно с приведенным выше кодом или он ждет, пока он не завершится?
Есть ли теоретический шанс, что это напечатает «потерянные данные»?

Если да, всегда ли рекомендуется сначала сохранять переменную или , всегда проверять null и никогда not null ?

Заранее спасибо !

/ Никлас

5
задан Niklas 24 February 2012 в 13:34
поделиться