我在我的GUI中使用qt,但是我用c ++(CLion)编码了原始服务器。 当我在qt中运行整个项目时,我在控制台上看到此错误: “程序意外完成” “程序被强行终止”。 这是主要功能:
int server_main::begin() {
N = server_main::read_configuration();
char database_name[20];
Database* db;
sprintf(database_name, "sniff.db");
if(!exist_db(database_name)){
printf("File NOT found!\n");
db = new Database(false);
}
else {
printf("File found!\n");
db = new Database(true);
}
Analyzer* analyzer = new Analyzer(N, db, pos);
analyzer->init();
cout << "CREATING SERVER..." << endl;
Server* server = new Server(PORT, N, analyzer);
int err = server->init();
cout << "Server successfully created!" << endl;
if (err != 0) {
cerr << strerror(err) << endl;
exit(err);
}
thread server_thread(start,server);
server_thread.join();
while(1){
analyzer->update_view();
}
return 0;}
当我在后台运行服务器时,问题出在以下两行代码中:
thread server_thread(start,server);
server_thread.join();
有人知道如何解决该问题吗? 预先感谢