pthread mit Klassen Problem



  • hi

    Habe folgendes Problem bzw. Frage kann es sein das man nur threads einer Funktion erstellen kann ?
    Und nicht mit einer Klasse denn folgendes funktioniert nicht:

    void *CThreads::helloworld(void *arg)
    {
     printf ("HELLO WORLD! ");
    }
    
    void CThreads::newthread()
    {
    pthread_t aThread;
     pthread_create(&aThread, NULL, helloworld, NULL);
    }
    

    oder ist da irgendwo ein Fehler drin ?

    Die Fehlermeldung lautet:
    c++ -Wall -c -o src/test.o src/test.c
    src/test.c: In member function void* CThreads::helloworld(void*)': src/test.c:33: Warnung: control reaches end of non-void function src/test.c: In member functionvoid CThreads::newthread()':
    src/test.c:57: error: argument of type void*(CThreads::)(void*)' does not matchvoid
    ()(void)'
    make: *** [src/test.o] Fehler 1
    *

    MFG
    natrium



  • Suchfunktion hilft...

    Problem ist, die Memberfunktionen der Klasse müssen mit einem Objekt aufgerufen werden. Das lässt sich dann nicht in eine normal freistehende Funktion konvertieren.


Anmelden zum Antworten