Как использовать поток в Qt с C ++? - PullRequest
0 голосов
/ 14 декабря 2018

Я использую qt для моего GUI, но я кодировал свой оригинальный сервер на 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();

Кто-нибудь знает, как решить проблему?Заранее спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...