abend
kann mit mal bitte wer bei folgendem prob helfen
das war eine testangabe
void* f(void p){
return 0;
}
main() {
int i = 0;
while ( i<=5 )
{
pthread_t t;
pthread_create(&t, 0, f ,(void) i);
i++;
}
pthread_exit(0);
}
zu erledigen war nun folgendes
a) In welchen Zeilen Befinden sich Syntaxfehler und wie lauten die Zeilen richtig?
b) Unter der Annahme, dass alle Syntaxfehler beseitigt sind: aus wie vielen Threads besteht die Anwendung insgesamt?
c) Unter der Annahme das alle Sytaxfehler beseitigt sind: ergänze das Programm soe, dass an der Konsole von jedem Thread
genau eine Meldung erscheint. Die Meldung muss für jeden Thread unterschiedlich lauten
Fehler#1: Zeile 1 man braucht einen void* in der Klammer
#2: beim phthread_create gehört
pthread_create(&t,0,f,(void *) i);
(also ebenfalls mit void*)
dann ich hätte vermutete dass es 6 threads sind, dürfte aber nicht stimmen
und wie macht man dass mit der ausgabe?
ich habs momentan auf das geändert
void* f(void *p){
return 0;
}
int main() {
int i = 0;
while ( i<=5 )
{
cout <<"Thread " << i << " wurde erzeugt"<<endl;
pthread_t t;
pthread_create(&t,0,f,(void *) i);
i++;
}
pthread_exit(0);
}
dürft aber auch net wirklich passen
ich vermute es gehöhrt noch etwas in void* f(void* p) rein, weil das ist ja nicht einfachso vorhanden....
bitte um rasche hilfreiche antwort (ich bin ziemlicher Anfänger auf diesem Gebiet und habe am Montag Prüfung)
stefan