1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SÂhc@s¤ddlmZddlmZddlmZddlmZddlm    Z    m
Z
m Z ddl Z ddl mZmZedƒZd    efd
„ƒYZdS( iÿÿÿÿ(tThread(tsleep(tAsyncoreServer(t CtrlDBManager(t CommonDefinetSingletonObjecttStatN(tCommFunctmylogsConfig.DBConfigtPackDispatchThreadcBs,eZd„Zd„Zd„Zd„ZRS(cCs;tj|ddƒ||_||_||_t|_dS(NtnameR    (Rt__init__t_PackDispatchThread__servert"_PackDispatchThread__ctrlDBManagert'_PackDispatchThread__logicProcessThreadtFalset_PackDispatchThread__eleganExit(tselftservert ctrlDBManagertlogicProcessThread((s%.\\ServersRoute\PackDispatchThread.pyR s
            cCs'x tr"|jjƒ}|dkr(Pntjƒjd7_|jƒj}t    j
d|j ƒƒ|t j kr˜t    j
dƒtjƒj|ƒqn|t jkrÍt    j
dƒtjƒj|ƒqn|jj|ƒrt    j
dƒ|jj|ƒqnt    j
dƒ|jj|ƒqWdS(Nispack %s dispatching...satHeart not processed!satDisconnect not processed!s'Further dispatch to logicProcessThread!s"Further dispatch to ctrlDBManager!(tTrueR trecvQueuePopNoWaittNoneRtGetStattpackDispatchThreadCountt getPackHeadttypeRtdebugt outputStringRtatHeartRt getPackPooltfreet atDisconnectRt
canProcesst requestPushR t dbRequestPush(RtpacktpackType((s%.\\ServersRoute\PackDispatchThread.pytruns*         cCs:t|_tj|ƒtjd|jƒ|jfƒdS(NsThread %s(%s) start!(RRRtstartRtinfotgetNametident(R((s%.\\ServersRoute\PackDispatchThread.pyR(>s     cCsXtjd|jƒƒt|_x|jƒr<tdƒq#Wtjd|jƒƒdS(NsStoping thread %s...gš™™™™™¹?sThread %s stop OK!(RR)R*RRtisAliveR(R((s%.\\ServersRoute\PackDispatchThread.pytstopCs
    (t__name__t
__module__R R'R(R-(((s%.\\ServersRoute\PackDispatchThread.pyR    s        $    (t    threadingRttimeRtNetCoreRt LogicProcessRtDBCommonRRRtLogicProcessThreadtCommonRRt
__import__tDBConfigR    (((s%.\\ServersRoute\PackDispatchThread.pyt<module>s