From fa79d72b6c1a264fc9b32cdd6195e9a3b46a2551 Mon Sep 17 00:00:00 2001 From: semenov Date: Tue, 20 Aug 2024 09:13:31 +0300 Subject: [PATCH] feat: connection thread --- Core/tcpclient.cpp | 4 ++-- RRJClient.pro.user | 2 +- debug/RRJClient.exe | Bin 7033903 -> 7033903 bytes debug/mainwindow.o | Bin 901749 -> 901749 bytes debug/tcpclient.o | Bin 692352 -> 692352 bytes mainwindow.cpp | 18 ++++++++++-------- 6 files changed, 13 insertions(+), 11 deletions(-) diff --git a/Core/tcpclient.cpp b/Core/tcpclient.cpp index 5fcded6..06f8eff 100644 --- a/Core/tcpclient.cpp +++ b/Core/tcpclient.cpp @@ -22,9 +22,9 @@ void TCPClient::SetConnect(ServerSettings *serverSettings) { socket = new QTcpSocket(this); - connect(socket,&QTcpSocket::readyRead,this,&TCPClient::onReadyRead); + connect(socket,&QTcpSocket::readyRead,this,&TCPClient::onReadyRead,Qt::DirectConnection); connect(socket,&QTcpSocket::disconnected,this,&TCPClient::SetDisconnect); - connect(this,&TCPClient::Recognize,recognizeSystem,&RecognizeSystem::Recognize); + connect(this,&TCPClient::Recognize,recognizeSystem,&RecognizeSystem::Recognize,Qt::DirectConnection); socket->connectToHost(serverSettings->Address,serverSettings->Port.toShort()); emit onSendDebugLog("Try connect..."); diff --git a/RRJClient.pro.user b/RRJClient.pro.user index 29d05c8..3903a86 100644 --- a/RRJClient.pro.user +++ b/RRJClient.pro.user @@ -1,6 +1,6 @@ - + EnvironmentId diff --git a/debug/RRJClient.exe b/debug/RRJClient.exe index fe18d1381f3384f8fe203e2f0bab132449b975b6..b4b4e9dcab3358bc1e31ca008a96a8d11ccfd026 100644 GIT binary patch delta 1724 zcmZ9~drVVT90%}o?(M~bObYU-po5_>o&|<(;H_GwxZ)5BGI=L4zR$ zI+n7M9HPNJc({ohh>I0AWg7`>%d(J|pvG+`vIVka50_<`!;F1zZ>hMHPdNRZ-}n4Z zZ|>;(AM&GM@8HgE=;_Mg=T6sMy0e@^spDquT}m%I4ZXp-2^Aq^=|&DA`p%h2tnvT8 z-X?f&=E%yN-qubysbn!t#7K=79&cP4cTCqL=J|$6%@b;=!}z}r{l_aSkB-sF$B1&% zYTc&OWn7hKe}VB!1&$0;;>kBdU8fdFr`|jG*aes3rq`ZokblKBxk);qc46&)k$koO zNBb8>*X|p$yLUAB5Rx$^T_W2SHR7Pe@r$Wc<1>!A-R%Y{jsG0aWs}|nxn;Bp*b_=iWGSwogwZ>fgG7b67x57EdHgj@SfM50$1E5Gj%)t~Vvyrc1+9%6A;9KdM={=(^)6PkKDi zHPHQ1*>tAKb;!yO_PXP4eOTms@~`l8SSIoMxjPzMdk%X|FwH-`T<=`2r@k|WAE`jd zGUa{AC7{haV;2$|!230dTXE;V^5RnPLmJ8JSRkLpjna79i2;Zbc@2;Zp583mR@ z3gMob3<)=^g{d6ypa229U>zvI8+>3r_`(yg0sKG({ty5gArOKf7(ze|n;;azU^8ri zCm|dn;3I>9h=&A71PvrXGNiyWkP6#j2RsYUK^mmPPG@1NxZOfO zWp50KY4i&7ODT_Jivwa39bsQ4mnX7)gJJ?b#~KI4!?cezCY1-W?*_%)^eq-PB<9n0 zsT9ZhhQvtP%03wq_tOT}ecznU#9?t8H8JC`sG}9^-C=PrEn#<3$|IO?UJR#s%$`!d z)u}%(?#vCIbyALSJtVrU%+h2&-ehimo%qi>`~DKGDY#TbjJA-Dv6dKZvufb8Dyda( zu^ew|CjNu$VT^V`WtFRjuV~jTLi{_}Z?W27+Qq!$w2Sl<`!!CRhkNPbwU=<0KjO8c z0eOXf(mBfL6V(k>)m6klk6ljCeo$#{)JZQf3A*lH{A=S$khV##N?#&kPsm>)CRP_& z&F;$W)rI+0cjdwA!v31Oa?v`KsD)jy8}@(>GT?dG3;Q4w_QMOHhb%Y%FG4mPgdE5P z1LQ$I9D)LP2@XRc6hSeRz!7*EO5rG!ff34~!a0>#Sy0S#u|X`-TG`5at(7MOvf7lz z$|LxcK(Vrz4|hg&RPr=qzO`B5&%aIW{Q617Mt;6k*``qQuN-SrCb|ExJxP_CdBQ2E l*ExmSi=S?_D{o34Y0GNvtb{74hGS3zCNMkAowYMx{|AHSJLLcX delta 1712 zcmZA0dr(wW90%}o?%j)vQm`Pf0V<);@@7E^y_+p5wk7f~f( zU&945KQ$VFh8b55Z=D=Njr%Nme{=UPBs=Z33#HRsJ0^K28BixN@JSjUoMh&}&-3#< zrMzAfllo1Vdo?{DX!zg2fDv^d-(#oUJnEiJRDP*hNh1{B+QfqeYPg7p&un{Ot21{$ zT^!C+&*M-B;V3hyw-)yojkvlWxC|{mGzn?<+i7efc0pl&5Sr;syWnJbe^f?r>tvspxf;&>=jpQ#xBGkwfBGaCT zq)Z_aIOvX)c_UXs)Kylb`}0*w?jZ7)C(^H!)s-jRJmZekdLu?pMB44kBUu56@Kf`R zNy;5WE~=~8y^-Ev&sm5XNkJsT6RA=T?JbXJJ?ma&zc->&BTi|$N4dW@f`%#K^?L%( zo^ua7PH9@gdal5#{$Z41?kUF z(jlUJN0hqsWJJWP_q8aU(33U|T90d_5A@`s2CW}yq_6bkDlcznq?>wjLwd8lFiijv zG$4TwECDU}!ctfUe((@H4E_)RItYXySPsDu0->OXM<5KsAp%ywN>~Mv@F+yVYFGo& z5Ce~a0b(Hz;voSNAqkQp1&ojiX|NX7K{`AR8L%EUxC+zcwRSqjUOOpg&=KZuv_`Sp zC*@>%nth&PO=O$<NWOQye?iFGtZ=*oXb{ z7Fy4`XKm}5JRq;3)vRnlHq$cJJ0NeOMeMrK8p)(n@+z9kdW_c9F3Tx-LvF}~iwZ-z zIMmj>FK8G35xO?^N31D?b}*kf({0+qevdQdV_)WY(=hgOH{LW9m|N)2=h4PARlQhQ zRY`QY>{5d1bVW^rnZLOt(y>sS^Ay4NJjH#dNP?Ri)p7hsq_s)?5jne1yxQz((Y@p; zdKU^~`*@-Wo`8+;B$y!+o`OxV8M0stJPj6j2A+kjkPX`)2XY|~@?kqX2Rq<-D1bsJ zf@0VSyI?nzz#b@tGO$9qYdo=HN3p;5JP|a45F5mA+Cdi5UeUr%v{y6*Zf(`>)b7H? zzl*iSVuUNYqe7&a(=E*!op_w~h|9(_LE?0awpF7SU#M=?CVM{UzD%`A-(gPb^R`Cs hBTlsRXs_{$ceUF(E1(jppc-nR7HlqCXWitN{{k%tG}izC diff --git a/debug/mainwindow.o b/debug/mainwindow.o index 8cb161927b0689c8a314005b2542e12c21e8037c..910768fbfd11f90ce2133b5324c4f9397703d282 100644 GIT binary patch delta 1204 zcmZXRe@s(X6vyv*KiYexofIrQDpO)ql!3Znf}4MA*^)&we^m_xg`gWGR9stXmt|(5 zZtCh>2$FLi(^O{@@QnvNX$ z_j}I$)u%@)o*t>_t!UC;X<7k|{n4g10A77`e;D@Y?vL7Fr~UwEuior!gVQ?r+F)J( zNnZ`Y@zk^E1Gm!4*lU51wTS@&ZpZqA<2$`1D;~JSw zspn+%f<_WDst;u~rjdVSRF5j^4;neEAa*J0uNvu6e?DBE2$v@SL&A_T6bu!^Vw5MW z3r64u-*ASmgBbt(40Xfz{B+D#7KzYOXy;`SS_x6UK4vT7mm_oqoZ{Ir+iP6nv>1-^ z5>7Wk3;%@E_rS}CIIV?7UKpis!w0-JO5cTD{9=^81#aU(l-6#|8!j&(#)zbVrCrf1@^H%u`b+A=(zsC+WYUMBKD{yGGFWik8tr1BRS_H}LxRi0PA{7XC#MDB#-A{-vAx>us|3q3SGzUJU zAvO*m>3AT897cLBwDU-Vf+T$2sBm+UOm{WXHQ}B@Iw#zYjC%_y6c_dq{3qIlU5;cn zZ$-K;+^b0D(!&{d3h9P$-@*B!=-q*2_SPWX6z)NshXf^Y?i6)1NM@Zy#XG*R@Xm4e zCOqd;BvQCL$&Bvgyv-%fKn^7{_)I`T89HV#C2M`}vetibqq%`4 rI0jx)Cc>V9EDW3B8L-I9;L!GL*cN=~vA1uim<=#5*ih+*DZ$ho$G{$J#(rLKf$JEQ2Jd1| z+DqJ}(Ei!;y|mybm2%Of)LN`G-vYG5S;?`JfYJ(jZ2(nz#*Q=>2lb|cXPS~DtQ;D zWw3?Y!*mgB;ALUD7}oHnFkJ}w+CZ3=<&W*wKq68DnY@0z$Ln-^oxVN9+O4hrNd0qg z{r*%|46S@_8uKMI-7MEj^E@86*GH`9cqEOz%Q$SP1$SY38X?xYk)n;ed^p?QjXtN_ zMXX2o?R545s(Fi@72?Kz+u3E@QR_H%DKWozv_3DLT(#L%zPX%O^SOIGYc9V7L^Q|y z5isLp>Mglw7zP6}Nq+LrkK>kXlsF2NVHg;Jo%jZNbAV|W8cf>032f!6(exsb6iJ$z zq$k?SAM9k+yx7aC5|_@sL+)qfx)W2eG3Od(?yBGT=F*bl?j6IHYL%3J4?-FEH@jT~&pYLTkFv#EZ zvJ6adeIm^=Qn8V0MDkzgW7>tjQ7bZ&U5Qj&9gy8Is@0ehpW8O6eh3#IZg{8IqW>ua ierHEKhFNoVSS$+v9I;H}fp!by`y&>YX1i)BV}AjkVH}kJ diff --git a/debug/tcpclient.o b/debug/tcpclient.o index 1be312b3941ed2d2a9a45b1e742ffc84e97285e2..23d9818a301a02441daa4f390c66c244fcfeef27 100644 GIT binary patch delta 66 zcmZozsMWAgYr`)mM#jnc&T^9_oewfHHs5w`zwOKj#7scU48$xz%nHP8K+F!r96-#u K{kAjLQXc?-)f)u> delta 64 zcmZozsMWAgYr`+6$$8H5lO>%GGBPyZc5c7z%m~CxK+FupEI`Z(#B4y!4#XTl%(?xx IGuKid0Cz4M0ssI2 diff --git a/mainwindow.cpp b/mainwindow.cpp index 5c6b407..3785258 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -22,9 +22,8 @@ void MainWindow::Initialize() ui->startButton->setEnabled(false); updateControllerThread = new QThread; - updateControllerThread->setPriority(QThread::LowPriority); connectionThread = new QThread; - connectionThread->setPriority(QThread::HighestPriority); + client = new TCPClient; client->moveToThread(connectionThread); @@ -44,17 +43,20 @@ void MainWindow::Initialize() connect(recognizeSystem,&RecognizeSystem::onSendDebugLog,this,&MainWindow::DebugLog); connect(recognizeSystem,&RecognizeSystem::SockedDisabled,this,&MainWindow::LostConnection); connect(recognizeSystem,&RecognizeSystem::SaveLoginData,this,&MainWindow::CheckLoginResult); - connect(recognizeSystem,&RecognizeSystem::SocketWaitForReadyRead,client,&TCPClient::WaitRead); + connect(recognizeSystem,&RecognizeSystem::SocketWaitForReadyRead,client,&TCPClient::WaitRead,Qt::AutoConnection); connectionThread->start(); updateControllerThread->start(); - connect(client,&TCPClient::onSendDebugLog,this,&MainWindow::DebugLog); + updateControllerThread->setPriority(QThread::LowPriority); + connectionThread->setPriority(QThread::HighestPriority); - connect(this,&MainWindow::onInitializeClient,client,&TCPClient::Initialize); - connect(this,&MainWindow::onSetConnect,client,&TCPClient::SetConnect); - connect(this,&MainWindow::onSendMessage,client,&TCPClient::MessageEntered); - connect(this,&MainWindow::SendClientAuthorization,client,&TCPClient::SendClientAutorization); + connect(client,&TCPClient::onSendDebugLog,this,&MainWindow::DebugLog,Qt::AutoConnection); + + connect(this,&MainWindow::onInitializeClient,client,&TCPClient::Initialize,Qt::AutoConnection); + connect(this,&MainWindow::onSetConnect,client,&TCPClient::SetConnect,Qt::AutoConnection); //умирает + connect(this,&MainWindow::onSendMessage,client,&TCPClient::MessageEntered,Qt::AutoConnection); + connect(this,&MainWindow::SendClientAuthorization,client,&TCPClient::SendClientAutorization,Qt::AutoConnection); connect(this,&MainWindow::onCalculateHash,updateController,&UpdateController::CalculateHash);