Library ohne pthreads-include



  • hi,

    meine Library benutzt pthreads.

    in einer Headerfile wird phreads.h includiert und private member-pointer auf pthreads-structs gesetzt:

    A.h:

    #include "pthreads"
    
    class A{
    A();
    private:
    
    pthread_mutex_t *mtx_USBaccess;
    pthread_t *thread_interrupt_usb;
    }
    

    Die Benutzer der Library sollen aber von den pthreads nichts mitbekommen, sodass ich pthread_mutex_t und pthread_t forwarden möchte und die pthreads.h in der cpp. Datei includiere.

    Mit
    #ifndef pthread_mutex_t_
    typedef struct pthread_mutex_t_ * pthread_mutex_t;
    #endif

    klappt das schonmal bei dem mutex.

    Bei pthread_t wird er verzwickt und ich bekomme nur Fehlermeldungen.
    pthread.h

    typedef struct {
        void * p;                   /* Pointer to actual object */
        unsigned int x;             /* Extra information - reuse count etc */
    } ptw32_handle_t;
    
    typedef ptw32_handle_t pthread_t;
    

    Im Internet hab ich keine Lösung des Problems gefunden. Habt ihr eine Idee?


Anmelden zum Antworten