Zdrojové súbory na cvičenie si stiahnite spoločne ako archív.
Podľa pokynov v zdrojovom súbore upravte model synchronizačného problému tvorby molekúl vody. Aktuálny model pri svojej inicializácií vytvorí fixný počet vlákien atómov vodíka a kyslíka a tieto vytvoria molekuly vody. Cieľom modifikácie je nahradiť fixné vytvorenie vlákien dynamickým počas trvania celej doby simulácie. Namiesto fixného vytvorenia množiny vlákien je potrebné v každej iterácii cyklu vytvoriť jedno vlákno: buď vlákno vodíka alebo kyslíka. Nezabudnite na to, že vlákien vodíka je potrebné generovať dvakrát viac než vlákien kyslíka. Bude viac než vhodné, ak na dosiahnutie tejto skutočnosti použijete vhodnú funkciu z modulu random.
Znovu podľa pokynov v zdrojovom súbore upravte program, ktorý rieši synchronizačný problém hodujúcich divochov (Dining Savages).
Modifikácia úlohy spočíva v tom, že kmeň divochov má viacero kuchárov. Keď niektorý z divochov pri pokuse vziať porciu z hrnca zistí, že je prázdny, zobudí VŠETKÝCH kuchárov, ktorí spoločne varia. PRÁVE JEDEN kuchár vkladá porcie do hrnca a oznamuje čakajúcemu divochovi, že je dovarené.
Pred programovaním úlohy:
