Piszę dostawcę PowerShell w języku C#. Dostawca udostępnia obiekty domeny aplikacji za pośrednictwem interfejsu podobnego do dysku. Na przykład:W dostawcy PowerShell, kiedy odświeżasz vs dane pamięci podręcznej?
my:\Users\[email protected]
my:\Customers\Marty
Dane ostatecznie pochodzą z bazy danych.
Nie mogłem znaleźć żadnych wskazówek dotyczących tego, kiedy należy udać się do bazy danych w poszukiwaniu danych i kiedy należy ją buforować. Uważam, że PowerShell wielokrotnie wywołuje metody takie jak ItemExists i GetChildNames; często wielokrotnie dla tego samego polecenia. Nie jest praktyczne, aby przejść do bazy danych 5 lub 6 razy tylko dlatego, że na przykład kliknęli Tab dla autouzupełniania.
Ale w tym samym czasie, jako użytkownik w wierszu polecenia, jeśli wpisuję Get-ChildItem
(dir
) i wyświetlić listę, a następnie zrobić coś poza PowerShell tak, że wiem, że dane są odświeżane, biorąc kolejną listę katalogów należy się spodziewać aby zobaczyć wszelkie zmiany w bazie danych.
Czuję, że gdybym znał właściwy termin, aby opisać mój problem (w języku PowerShell), byłbym w stanie odpowiedzieć na Google lub znaleźć istniejące zduplikowane pytanie, ale utknąłem.
"Istnieją dwa trudne problemy w inżynierii oprogramowania: nazywanie, unieważnianie pamięci podręcznej i wyłączanie przez jeden błąd." – Richard