Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Za każdym razem, gdy dozownik zasobów przydziela zasób od jego posiadacza, następuje:
Dozownik zasobów deklaruje identyfikator typu zasobu (RESTYPID), który opisuje wymagany typ zasobu.
Dozownik zasobów wywołuje metodę IHolder::AllocResource, przekazując tę metodę RESTYPID.
Właściciel generuje listę kandydatów z dostępnych zasobów. Kandydaci to zasoby, które nie są wymienione w transakcji lub są już wymienione w transakcji wywołującego obiektu.
Ci kandydaci są indywidualnie przekazywani do metody IDispenserDriver::RateResource, w której są oceniane (w skali od 0 do 100) według tego, jak dobrze zasób kandydata pasuje do żądanego RESTYPID.
Właściciel wybiera zasób, zasób, według którego wskaźnik dyspozytor zasobów jest najwyższy.
Dozownik zasobów może wcześnie przerwać pętlę klasyfikacji, przypisując kandydatowi ocenę zasobów 100 (idealne dopasowanie). Klasyfikacja 100 zwykle byłaby zarezerwowana dla zasobów kandydatów, które są już prawidłowo wymienione, chyba że dozownik zasobów stwierdza, że rejestracja jest niedrogim działaniem. Jeśli wszystkie zasoby kandydata (jeśli istnieją) są oceniane jako 0 (bezużyteczne), zostanie utworzony nowy zasób, wywołując IDispenserDriver::CreateResource.
Jeśli zasób wybrany wcześniej nie jest jeszcze wymieniony w transakcji obiektu wywołującego, wywoływana jest metoda IDispenserDriver::EnlistResource.
Wywołanie metodyallocResourcepowraca do dyspozyturu zasobów z wyświetlonym zasobem.
Tematy pokrewne
-
rejestrowanie zasobu w transakcji