33. Mis on prioriteetide inversioon, selgitada selle tekkimist? Kui madalama prioriteediga tegum blokeerib kõrgema prioriteediga tegumi (t1 pöördumine kriitilise ressursi poole). 34. Kuidas töötab päritava prioriteediga protokoll (priority inheritance protocol)? Kõrgema prioriteediga tegum püüdes kasutada madalama prioriteediga tegumi poolt hõivatud kriitilist ressurssi, pärandab oma prioriteedi madalama prioriteediga tegumile selleks ajaks, kuni nõutav ressurss vabaneb. NB: ei väldi ummikut, võib seda isegi esile kutsuda 35. Iseloomustada prioriteedi laega protokolli (priority ceiling protocol). Laiendab prioriteedi pärandamist nii, et ükski tegum ei saa minna kriitilisse regiooni selliselt, et ta seal blokeeritakse. Selle saavutamiseks antakse igale ressursile prioriteet, mis võrdne kõige kõrgema seda ressurssi kasutava tegumi prioriteediga. Sarnane prioriteedi pärandamise käitumisega, lisaks ei saa
serverile ette anda. Kohe kui serveril on vaba ressursse tööde tegemiseks, hakkab ta neid tegumeid ükshaaval täitma. Nii et kui perioodilised tööd käivitatakse määratud perioodi tagant, siis tegumid käivitatakse võimalikult väikese perioodi tagant ja seda niikaua kuni tegumid otsa saavad. Üks teine erinevus veel perioodiliste töödega seinseb faktis, et kui perioodilise töö puhul tehakse skriptile GET päring, siis tegumi puhul tehakse POST päring. See võimaldab tegumile ette anda suuremas mahus parameetreid, kuna GET parameetrite mahtudel on suhteliselt väikesed limiidid. Tegumite kasutamiseks tuleb sisse laadida teek taskqueue. NB Kuna teek asub api.labs paketis ja tegu on eksperimentaalse (lõplikult väljakujunemata) funktsionaalsusega, siis tulevikus muutub teegi aadress ja võivad (aga ei pea) muutuda ka teegi funktsioonid. from google.appengine.api.labs import taskqueue Tegumi väljakutsumine Tegumi väljakutsumiseks tuleb käivitada taskqueue