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
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!