如何使用C ++在Qt中使用线程?

时间:2018-12-14 13:30:43

标签: c++ qt

我在我的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();

有人知道如何解决该问题吗? 预先感谢

0 个答案:

没有答案