logo search
Учебник ИСПиУ

4.9.16 Приоритет «отложенной» транзакции

Рассмотрим те же политики назначения приоритетов, что и для случая «непосредственной» транзакции.

Назначение приоритета для случая порождения «отложенной» транзакции очень похоже, как и в случае порождения «непосредственной» транзакции. В случае использования DIV и SL методов приоритет отцовской транзакции будет изменяться, когда порождается отложенная транзакция, а в случае использования PD метода нет.

Рассмотрим транзакцию T, которая порождает i-ю отложенную транзакцию в момент времени t. Тогда приоритет породившей транзакции будет следующим:

Pt(T)=d(T)

Pt(T)=Pt(T)–Xt( ). (4.9.12)

. (4.9.13)

Предположим, что транзакция T породила m отложенных транзакций до своего завершения. Пусть – j-ая отложенная транзакция, jm, начинает свою работу в момент времени w (после того, как породившая транзакция закончила свою работу). Тогда приоритет транзакции будет следующим:

. (4.9.14)

. (4.9.15)

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

. (4.9.16)

Т.е. приоритет вычисляется как количество времени оставшегося до истечения директивного срока минус оценка времени, необходимого на выполнение всех отложенных транзакций.