cehua_ZWJ
2019-01-30 6afaa4408f4e09e3e95dbd92f0d1cd5a1fb2942b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
F/\c@sÒddlZddlZddlZddlmZddlmZddlZddlm    Z    m
Z
ddl Z ddl Z ddl Z ddlZedƒZdejfd„ƒYZdd
d    „ƒYZdS( iÿÿÿÿN(tmylog(tPacketDispatcher(t CommonDefinetStatsConfig.DBConfigtAsynServerClientcBsYeZd„Zd„Zd„Zd„Zd„Zd„Zd„Zd„Z    d„Z
RS(    cCswtjj||ƒttjƒƒ|_||_tjƒ|_    |j
|j    _
||_ ||_ d|_ t|_dS(Nt(tasyncoret
dispatchert__init__tstrtuuidtuuid4t    sessionIDtaddrRt!_AsynServerClient__packDispatchert OnGetPackett_AsynServerClient__onCloset_AsynServerClient__recvQueuetsendBuftTruet_AsynServerClient__active(tselftsockR tOnCloset    recvQueue((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyRs                cCstjdƒdS(s×ÓÀàʵÏÖs
unhandled!N(Rtwarning(Rtbuf((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyR$scCs#|js dSy«|jtjƒ}t|ƒdkrB|jƒdStjsitj    ƒj
t|ƒ7_
ntj r§t j dt|ƒtj|ƒ|jjƒfƒn|jj|ƒWndtk
r}t jd|jjƒ|fƒt jd|jjƒtjƒfƒ|jƒdSXdS(Nis*recv len = %s data = %s from socketID = %sssocketID = %s error = %sssocketID = %s %s(RtrecvRtMAX_RECVtlentclosetDBConfigtMultiThreadingRtGetStatt    RecvBytest
DUMPPACKETRtdebugtbinasciitb2a_hextsockettfilenoRtonRecvOrginPackett    ExceptionRt    tracebackt
format_exc(RtrecvBuftwhy((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt handle_read+s"    
        5 &
cCst|jƒdkS(Ni(RR(R((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pytwritableEscCs¤|j st|jƒdkr#dStjrixqt|jƒrey»|j|jƒ}|dkržtjd|jj    ƒt
j |jƒfƒt j dƒw/ntjƒrÔtjd|t
j |j| ƒfƒn|j||_tjd|jƒWq/tjk
ra}tjd|jj    ƒ|fƒtjd|jj    ƒtjƒfƒ|jƒq/Xq/Wn7|j|jƒ}|j||_tjƒj|7_dS(NissocketID = %s send %s failed!g¸…ëQ¸ž?slen = %s data = %s send!sleft data = %sssocketID = %s error = %s!ssocketID = %s %s(RRRRR tsendRRR'R(R%R&ttimetsleepRtIsDebugR$terrorR+R,t handle_closeRR!t    SendBytes(RtsentR.((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt __processSendHs*     ,  * &cCstjs|jƒndS(N(RR t_AsynServerClient__processSend(R((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt handle_write`s    cCsW|js dSt|_tjd|jjƒƒ|jrI|j|ƒn|jƒdS(NssockID = %s closed!(RtFalseRtinfoR'R(RR(R((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyR6es            cCsy|jj|ƒ}|j|7_t|jƒtjkrktjdt|jƒtj|jj    ƒfƒn|j
ƒdS(Ns;send buf (len = %s) > (MAX_PACK_LEN = %s) via socketID = %s( RtpackDataRRRt MAX_PACK_LENRR5R'R(R:(RRtpackBuf((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pytpushSend|s
2cCs(tjd|jjƒƒ|jƒdS(NsDisconnect socketID = %s(RR=R'R(R6(R((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt
disconnect„s( t__name__t
__module__RRR/R0R:R;R6RARB(((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyRs                                 tAsynServerClientMgrcBsGeZd„Zd„Zd„Zd„Zd„Zd„Zd„ZRS(cCs i|_dS(N(t sessionIDDict(R((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyR‰scCsT|s
dSt|tƒsdStjd|jjƒ|jfƒ||j|j<dS(NssocketID = %s sessionID = %s(t
isinstanceRRR$R'R(R RF(Rtclient((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt    addClients #cCsB|jj|jƒr&|j|j=tStjd|jƒtSdS(Nsdel sessionID = %s failed!(RFthas_keyR RRRR<(RRH((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt    delClient•s
 cCs t|jƒS(N(RRF(R((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt getClientCntscCs|jj|ƒS(N(RFtget(RR ((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt    getClient scCs0|jjƒ}|t|ƒkr%dS||jS(Niÿÿÿÿ(RFtvaluesRR (Rtindext
clientList((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pytgetClientSessionIDByIndex£scCs |jjƒS(N(RFRO(R((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt getClientList©s(    RCRDRRIRKRLRNRRRS(((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyREˆs                        ((RR'R+tCommonRtProtocolRR%tDBCommonRRtQueuetinspectR
R2t
__import__RRRRE(((sU.\\TCode\TeamServer\Server4\Servers\PyMongoDataServer\src\NetCore\AsynServerClient.pyt<module>
s         q