Tôi đang cố gắng lập trình một máy chủ dòng lệnh để nhận thông tin từ cổng nối tiếp, phân tích cú pháp và ghi lại nó trong một đối tượng bên trong.C++ std :: thread của hàm thành viên
Sau đó, theo yêu cầu từ khách hàng, máy chủ sẽ trả lại thông tin được yêu cầu.
Điều tôi muốn làm là đặt người nhận & các bộ phận phân tích cú pháp trong một chuỗi riêng biệt để máy chủ chạy dọc theo bên, không can thiệp vào việc thu thập dữ liệu.
#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
Có thể biên dịch 'public void completeProcess() {..'? – Deqing
Có thể trùng lặp của [Bắt đầu chuỗi với chức năng thành viên] (http://stackoverflow.com/questions/10673585/start-thread-with-member-function) –