ThreadHandle::~ThreadHandle() //停止所有线程,并释放资源 { QThread * tmp; for (auto it = threadSize.begin(); it != threadSize.end(); ++it) { tmp = it.key(); tmp->exit(); tmp->wait(3000); delete tmp; } }
void sshsocket::edit() { QTimer *timer = servers->at(index)->getTimer() ; if (timer != NULL) { if (timer->isActive()) { timer->stop() ; delete timer ; } } QThread *thread = (QThread*)host->getThread() ; if (thread != NULL) { if (thread->isRunning()) { thread->exit(); } } servers->replace(index, host); model->new_updt(index); }