parallele Programme
-
hey,
basierend auf dem Graphen soll ich ein Programm in Pseudocode schreiben, das soweit wie möglich Funktionen parallel ausführthttp://img219.imageshack.us/my.php?image=techgi3qc7.jpg
ich kann leider kein fork/join u. parbegin/parend benutzen. Bis jetzt ist mir klar geworden, dass 2 Aktionen nebenläufig sind, wenn keine von ihnen Voraussetzung der anderen ist. Nun weiss ich nicht wie ich das schreiben soll..
danke im Voraus für welche Hinweise
-
blacha23 schrieb:
ich kann leider kein fork/join u. parbegin/parend benutzen.
Nimm CreateThread.
-
int main (void){
int a,b,c,d,e,f,g,h,ia
createThread (b,c)
createThread (d,e)
f
createThread (g,h)
i
}so was wird gehen oder eher nicht?
-
Nee,
hier ist von Pseudocode die Rede, also musst du nicht unbedingt C++ als Code nehmen.
Im ersten Schritt kann du den Pseudocode folgendermaßen aufschreiben:
1.) Führe Anweisungsblock A aus
2.) Erzeuge Threads B und C
3.) Starte Threads B und C
4.) Warte bis die Threads B und C terminiert sind
5.) Erzeuge Threads D und E
6.) Starte Threads D und E
...Danach musst du je nach Aufgabenstellung deinen Pseudocode erweitern/verfeinern. Denn wie stellt
man beispielsweise fest ob zwei Threads terminiert sind ? Was bedeuten die Verbindungen zwischen
B, C, D, E ? Wenn der Thread B terminiert, werden dann die Threads D, E gestartet ? (In meinem
Pseudocode gehe ich davon aus das B und C terminieren müssen bevor D und E gestartet werden)