Pthread und mehrere Argumente/Struct uebergeben



  • Hi,

    habe ich eine Moeglichkeit einen Struct ueber einen Thread zu uebergeben. Wenn ich das mit

    iret1=pthread_create(&nThreadID1, NULL, subRoutine, a1);

    aufrufe und a1 ist dann der Struct, dann kommt die Fehleremldung, dass man einen Struct nicht in den Typ void* umwandeln kann. Meine Threadfunktion sieht so aus:

    void * subRoutine (DataLot a){etc....}

    Was mache ich da genau falsch?

    Dank schon mal im Voraus!

    Gruss Jimmie



  • Zwei Sachen machst du falsch:
    1. Die Funktion pthread_create kenne ich nicht, ich denke aber die Signatur muss anders aussehen, z.B. void SubRoutine( void* ptr )
    2. Du solltest besser den Zeiger auf die Struktur übergeben, den solltest du dann sowohl beim übergeben als auch in der SubRoutine casten.


Anmelden zum Antworten