Problem mit thread



  • Ich setzte mich zum ersten mal mit threads auseinander, was mach ich hier falsch

    #include "header.h"
    #include "thread1.cpp"
    #include "thread2.cpp"
    
    int main() {
    
    pthread_t th[2];
    char buf[255];
    
    pthread_create(&th[1], NULL, &thread1, buf);
    pthread_create(&th[2], NULL, &thread2, buf);
    
    storm::sleep(60);
    
    return 0;
    }
    

    thread1.cpp:

    void thread1 (void *name) {
    
      while(1) 
        cin >> input;
    
    }
    

    thread2.cpp:

    void thread2 (void *name) {
    
      while(1)
        cout << input;
    
    }
    

    Mal unabhänig davon das der Quellcode keinen richtigen sinn hat (ist nur ein test)

    ich erhalte folgenden fehler!

    main.cpp: In function int main()': main.cpp:14: error: invalid conversion from \void ()(void)' to `
    void*()(void)'
    main.cpp:15: error: invalid conversion from `void ()(void)' to `
    void*()(void)'

    was mach ich falsch?



  • Mach mal aus den return types deiner Funktionen ein void* und return am Ende NULL.


Anmelden zum Antworten