Sto provando a programmare un server della riga di comando che riceverebbe informazioni da una porta seriale, analizzarlo e registrarlo in un oggetto interno.C++ std :: thread di una funzione membro
Quindi, su richiesta di un cliente, il server restituisce le informazioni richieste.
Quello che voglio fare è mettere le parti del parser del ricevitore & in un thread separato per far funzionare il server lungo il lato, senza interferire con la raccolta dei dati.
#include <iostream>
#include <thread>
class exampleClass{
std::thread *processThread;
public void completeProcess(){
while(1){
processStep1();
if (verification()){processStep2()}
}
};
void processStep1(){...};
void processStep2(){...};
bool verification(){...};
void runThreaded();
} // End example class definition
// The idea being that this thread runs independently
// until I call the object's destructor
exampleClass::runThreaded(){
std::thread processThread(&exampleClass::completeProcess, this);
} // Unfortunately The program ends up crashing here with CIGARET
Può 'public void completeProcess() {..' essere compilato? – Deqing
Possibile duplicato di [Avvia discussione con funzione membro] (http://stackoverflow.com/questions/10673585/start-thread-with-member-function) –