Я использовал код на C++ давно, но сейчас решил вспомнить старые навыки и достижения некоторых новых: DТемы в классе C++
Сейчас я пытаюсь переписать мою программу C# в C++ и одна проблема возникла - Я не знаю, как управлять потоками или даже создавать их, используя методы класса и вызывающие методы из класса.
class MyObj {
private:
void thread() {
while (true) {
std::string a;
cin >> a;
}
}
static DWORD static_entry(LPVOID* param) {
MyObj *myObj = (MyObj*)param;
myObj->thread();
return 0;
}
public:
void start() {
CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE)static_entry, this, 0, NULL);
}
};
То есть образец, я нашел здесь, на StackOverflow, но Пустота нить() 'была пустая функция, я добавил код, приведенный выше, но нить, кажется, запуск и закрытие сразу.
Есть ли причина, почему вы не используете 'станд :: thread' ? – Rakete1111
Возможно, лучше использовать 'std :: thread' в качестве члена вашего класса. –
Никогда не накладывайте указатель на другой тип. – molbdnilo