Я делаю какую-то программу с 'MFC'.
Когда нажата кнопка, обработчик сообщений создает новый поток для работы.
На работе, пользователь может нажать кнопку B, чтобы выйтиприложение.
В потоке, который создается кнопкой A, используется созданный мной класс C.
Динамический класс выделяет некоторые ресурсы для работы.
КогдаB Кнопка нажата, я хочу отменить выделение ресурсов до того, как мое приложение умрет.
Как я могу это сделать?Помогите, пожалуйста!!!:)
void CMyDlg::On_A_BnClicked() { // do the job button
...
AfxBeginThread(MyThread, (LPVOID)this);
...
}
UINT CMyDlg::MyThread(LPVOID arg) {
...
MyCClass mcc;
for (int i = 0; i < 100; i++) {
...
mcc.init(file_name);
mcc.do_somethin();
mcc.deinit();
...
}
...
}
void CMyDlg::On_B_BnClicked() { // close button
}
void MyCClass::init(file_name) {
mFileClass.Open(file_name, CFile::modeCreate | CFile::modeWrite);
// and so on
...
}
Если пользователь нажимает кнопку B, когда в MyThread выполняется метод do_somethin.
Как выйти из MyThread после метода deinit () объекта MyCClass?
Я подумал, что нужно создать событие в обработчике кнопок B, а затем отправить сообщение в MyCClass
, чтобы я мог деиницировать все ресурсы в обработчике сообщений MyCClass.
Но, похоже, нетРабота.(