Klassen in Threads



  • Hallo,
    ich habe mal eine Verständnisfrage zu Threads. Ich übergebe einem Thread einen Zeiger auf eine Klasse. Im Thread wird diese Klasse benutzt um auf Zeichen zu warten:

    //Thread1
     CRS232 *pRs232 = (CRS232 *)hWnd;
    ...
     len = pRs232 ->waitOnCOM();
    
    if(len > 0)
     pSendeThread = AfxBeginThread(&SendThread, pRs232, THREAD_PRIORITY_NORMAL)
    

    Dann wird ein anderer Thread gestartet, welcher darauf antwortet. Dieser benutzt eine andere Funktion in der Klasse:

    //Thread2
       CRS232 *pRs232 = (CRS232 *)hWnd;
    
      //Schalter für RecvThread setzen
      SendenStatus.SetEvent();
    
      pRs232 ->answereOnRequest();
    

    Damit während des Sendens empfangene Zeichen bearbeitet werden können, läuft der Empfangsthread weiter. Dieser darf aber nicht die Variablen der Klasse benutzen, die auch der SendeThread benutzt oder?
    Oder wird jedes mal eine neue Klasse angelegt?
    (habe ich irgendwo schon mal gelesen)



  • Hallo,

    Oder wird jedes mal eine neue Klasse angelegt?

    Nein.

    MfG,

    Probe-Nutze


Anmelden zum Antworten