hxp
6 小时以前 4b390ebd5b48b7c3894631e27b2298ad08b34e6f
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
™.hc@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((s+.\\ServersRoute\NetCore\AsynServerClient.pyRs                cCstjdƒdS(s×ÓÀàʵÏÖs
unhandled!N(Rtwarning(Rtbuf((s+.\\ServersRoute\NetCore\AsynServerClient.pyR$scCs|js dSyŸ|jtjƒ}t|ƒdkrB|jƒdStjƒjt|ƒ7_tj    r›t
j dt|ƒt j |ƒ|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_RECVtlentcloseRtGetStatt    RecvBytest
DUMPPACKETRtdebugtbinasciitb2a_hextsockettfilenoRtonRecvOrginPackett    ExceptionRt    tracebackt
format_exc(RtrecvBuftwhy((s+.\\ServersRoute\NetCore\AsynServerClient.pyt handle_read+s     
    5 &
cCst|jƒdkS(Ni(RR(R((s+.\\ServersRoute\NetCore\AsynServerClient.pytwritableDscCs^|j st|jƒdkr#dS|j|jƒ}|j||_tjƒj|7_dS(Ni(RRRtsendRRt    SendBytes(Rtsent((s+.\\ServersRoute\NetCore\AsynServerClient.pyt __processSendGs
cCs|jƒdS(N(t_AsynServerClient__processSend(R((s+.\\ServersRoute\NetCore\AsynServerClient.pyt handle_writeOscCsW|js dSt|_tjd|jjƒƒ|jrI|j|ƒn|jƒdS(NssockID = %s closed!(RtFalseRtinfoR%R&RR(R((s+.\\ServersRoute\NetCore\AsynServerClient.pyt handle_closeRs            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_LENRterrorR%R&R3(RRtpackBuf((s+.\\ServersRoute\NetCore\AsynServerClient.pytpushSend]s
2cCs(tjd|jjƒƒ|jƒdS(NsDisconnect socketID = %s(RR6R%R&R7(R((s+.\\ServersRoute\NetCore\AsynServerClient.pyt
disconnectes( t__name__t
__module__RRR-R.R3R4R7R<R=(((s+.\\ServersRoute\NetCore\AsynServerClient.pyRs                                  tAsynServerClientMgrcBsGeZd„Zd„Zd„Zd„Zd„Zd„Zd„ZRS(cCs i|_dS(N(t sessionIDDict(R((s+.\\ServersRoute\NetCore\AsynServerClient.pyRjscCsT|s
dSt|tƒsdStjd|jjƒ|jfƒ||j|j<dS(NssocketID = %s sessionID = %s(t
isinstanceRRR"R%R&R RA(Rtclient((s+.\\ServersRoute\NetCore\AsynServerClient.pyt    addClientns #cCsV|jj|jƒr:tjd|jƒ|j|j=tStjd|jƒtSdS(Nsdel sessionID = %s Success!sdel sessionID = %s failed!(RAthas_keyR RR6RRR5(RRC((s+.\\ServersRoute\NetCore\AsynServerClient.pyt    delClientvs  cCs t|jƒS(N(RRA(R((s+.\\ServersRoute\NetCore\AsynServerClient.pyt getClientCntscCs|jj|ƒS(N(RAtget(RR ((s+.\\ServersRoute\NetCore\AsynServerClient.pyt    getClient‚scCs0|jjƒ}|t|ƒkr%dS||jS(Niÿÿÿÿ(RAtvaluesRR (Rtindext
clientList((s+.\\ServersRoute\NetCore\AsynServerClient.pytgetClientSessionIDByIndex…scCs |jjƒS(N(RARJ(R((s+.\\ServersRoute\NetCore\AsynServerClient.pyt getClientList‹s(    R>R?RRDRFRGRIRMRN(((s+.\\ServersRoute\NetCore\AsynServerClient.pyR@is                            ((RR%R)tCommonRtProtocolRR#tDBCommonRRtQueuetinspectR
ttimet
__import__tDBConfigRRR@(((s+.\\ServersRoute\NetCore\AsynServerClient.pyt<module>
s         R