做了一些修改
This commit is contained in:
parent
f0fe51fc54
commit
0875d5ec0b
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE QtCreatorProject>
|
||||
<!-- Written by QtCreator 6.0.2, 2023-01-14T13:53:08. -->
|
||||
<!-- Written by QtCreator 6.0.2, 2023-01-15T17:16:52. -->
|
||||
<qtcreator>
|
||||
<data>
|
||||
<variable>EnvironmentId</variable>
|
||||
|
@ -240,8 +240,8 @@
|
|||
<valuelist type="QVariantList" key="CustomOutputParsers"/>
|
||||
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
|
||||
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:\Users\25761\Desktop\TcpServer\TcpServer.pro</value>
|
||||
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">C:\Users\25761\Desktop\TcpServer\TcpServer.pro</value>
|
||||
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:C:/Users/25761/Desktop/TcpServer/TcpServer.pro</value>
|
||||
<value type="QString" key="ProjectExplorer.RunConfiguration.BuildKey">C:/Users/25761/Desktop/TcpServer/TcpServer.pro</value>
|
||||
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
|
||||
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
|
||||
<value type="bool" key="RunConfiguration.UseLibrarySearchPath">true</value>
|
||||
|
|
|
@ -7,6 +7,7 @@ DataManager::DataManager(QObject *parent)
|
|||
database = DataBase::getInstance();
|
||||
protocol = Protocol::getInstance();
|
||||
server = TCPServer::getInstance();
|
||||
server->setTimeOut(500);
|
||||
server->configAndrun();
|
||||
server->setCallBack(disconnect_from_cln);
|
||||
server->setCallBack(recv_from_cln);
|
||||
|
|
BIN
server.exe
BIN
server.exe
Binary file not shown.
|
@ -84,7 +84,7 @@ void TCPServer::TCPReadPeer()
|
|||
while(sock->bytesAvailable())//循环接收
|
||||
{
|
||||
recv += sock->readAll();
|
||||
if (!sock->waitForReadyRead(500))//超时停止接收
|
||||
if (!sock->waitForReadyRead(_timeout))//超时停止接收
|
||||
{
|
||||
/*QString error = sock->errorString();
|
||||
string error_t = error.toStdString();
|
||||
|
@ -100,6 +100,11 @@ void TCPServer::TCPReadPeer()
|
|||
recvcallback(recv,sock);
|
||||
}
|
||||
|
||||
void TCPServer::setTimeOut(int timeout)
|
||||
{
|
||||
_timeout = timeout;
|
||||
}
|
||||
|
||||
void TCPServer::setCallBack(void (*callback)(QByteArray &data, QTcpSocket* socket))
|
||||
{
|
||||
recvcallback = callback;
|
||||
|
|
|
@ -16,10 +16,12 @@ public:
|
|||
void setCallBack(void (*callback)(QByteArray &data,QTcpSocket* socket));//Qt的信号-槽机制实际就是回调函数,
|
||||
void setCallBack(void (*callback)(QTcpSocket* socket)); //此处为练手,不使用该机制
|
||||
void sendToclient(QTcpSocket *socket,QByteArray data);
|
||||
void setTimeOut(int timeout);
|
||||
void stopRun();
|
||||
private:
|
||||
explicit TCPServer(QObject *parent = nullptr);
|
||||
~TCPServer();
|
||||
int _timeout = 20;
|
||||
QString listen_addr = "0.0.0.0";
|
||||
qint16 listen_port = 7890;
|
||||
QTcpServer tcp_server;
|
||||
|
|
Loading…
Reference in New Issue