"Istnieją tylko dwa trudne problemy w informatyce: unieważnianie pamięci podręcznej i nazywanie rzeczy."Unieważnienie pamięci podręcznej - czy istnieje rozwiązanie ogólne?
Phil Karlton
Czy istnieje ogólne rozwiązanie lub metoda unieważniania pamięci podręcznej; wiedzieć, kiedy wpis jest nieaktualny, więc masz gwarancję, że zawsze otrzymasz świeże dane?
Weźmy na przykład funkcję getData()
, która pobiera dane z pliku. Buforuje go na podstawie czasu ostatniej modyfikacji pliku, który sprawdza za każdym razem, gdy jest wywoływany.
Następnie dodajemy drugą funkcję transformData()
, która przekształca dane i zapisuje w pamięci podręcznej wynik, aby następnym razem wywołać funkcję. Nie ma wiedzy o pliku - jak dodać zależność, że jeśli plik zostanie zmieniony, pamięć podręczna zostanie unieważniona?
Można zadzwonić pod numer getData()
za każdym razem, gdy wywoływana jest nazwa transformData()
i porównać ją z wartością użytą do zbudowania pamięci podręcznej, ale może to okazać się bardzo kosztowne.
Wierzę, że ma coś wspólnego z pisaniem X Windowsa – Greg
Myślę, że ten tytuł byłby lepszy jako "Incydentacja pamięci podręcznej - czy istnieje ogólne rozwiązanie?" ponieważ odnosi się do określonej klasy problemu z buforowaniem. – RBarryYoung
Nie, nie wiedział zbyt dużo informatyki. Jestem pewny, że jego zaangażowanie w tworzenie OpenGL, X11 i SSLv3 sprawiło, że był zbyt zajęty, aby naprawdę go uczyć. :-) –