Stránka 1 z 1

zkouška 2008-01-08

Napsal: 8. 2. 2008 18:29
od GreedyX
zhruba takhle jsem si poznamenal zadání

program 2 parametry
cislo, filename
cislo je rozmer pole
soubor - matice cisel
121

345

138


nemusi se kontrolovat, jak to vypada
-> do dvojrozmerneho pole

1) spustit n vlaken, kazde vlanko zpracuje jeden radek
-spocist celociselny prumer na radku a nahradit cisla prumerem
-upspat se na bariere
-posledni vlakno probude vsechny ostatni

2) kazde vlakno dostane sloupec, secte cisla, cislo na pozici sveho indexu pricte dvakrat
-uspat se na bariere
-to same co u jedniciky
-vypsat ten soucet

vypisovat :
vytvoreni vlakna
kazde vlakno ma id(ID)
prichod na barieru
probouzeni z bariery
specialni hlaska pro posledni vlakno na bariere (co probouzi ostatni)



A jak se to udela?
viz. http://wiki.matfyz.cz/wiki/SWI015_P%C5%99%C3%ADklady úplně dole + trocha triviálního kódění

pozn. místo
for (i = 1; i < NTHREADS; i++) pthread_cond_signal(ts->cv);
je lepší použít
pthread_cond_broadcast(ts->cv);

Hodně štěstí na dalších termínech.

:wq