diff --git a/src/main.cpp b/src/main.cpp index 0e35f50..0abfb2c 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -34,8 +34,10 @@ void terminate(int) std::cout << "Terminating..." << std::endl; for (const auto& instanse: g::instanses) { + instanse.second->terminate(); instanse.first->terminate(); } + std::exit(0); } void usage() @@ -185,7 +187,6 @@ int main(int argc, char *argv[]) pi->set3proxyConfigFile(pair.second); pi->moveToThread(thread); QObject::connect(thread, &QThread::started, pi, &ProxyInstanse::start); - QObject::connect(thread, &QThread::finished, pi, &ProxyInstanse::deleteLater); thread->start(); g::instanses.push_back( {thread, pi} ); }