По какой-то причине newConnection
сигнал, кажется, не испускается или обрабатывается правильно, когда я работаю в режиме отладки.
Ниже приведен пример, когда я, например, Telnet к этому серверу, OnNewConnection
вызывается, когда я запускаю программу в режиме выпуска, но не в режиме отладки. Есть идеи?
#include "Server.h"#include <QtWidgets/QApplication>
int main(int argc, char *argv[]) {
QApplication a(argc, argv);
Server s;
return a.exec();
}
#ifndef SERVER_H
#define SERVER_H
#include <QtNetwork/qtcpserver.h>
class Server : public QObject {
Q_OBJECT
public:
Server();
~Server();
public slots:
void OnNewConnection();
private:
QTcpServer* server;
};
#endif
#include "Server.h"
Server::Server() {
server = new QTcpServer(this);
server->listen(QHostAddress::Any, 5000);
connect(server, SIGNAL(newConnection()), this, SLOT(OnNewConnection()));
}
Server::~Server() {
}
void Server::OnNewConnection() {
exit(0); // whatever i put here, it's not called in debug mode
}
Задача ещё не решена.
Других решений пока нет …