Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

PythonÖÐreactor,factory,protocolµÄѧϰ±Ê¼Ç


PythonÖÐreactor,factory,protocolµÄѧϰ±Ê¼Ç
 
 
×îΪ¼òµ¥µÄÇé¿öÏ£¬³ýÁËÁ˽âÇåreactorµÄ¼òµ¥Ê¹Óã¬Ä㻹ҪÁ˽âProtocolºÍFactory¡£ËüÃÇ×îÖÕ¶¼»áÓÉreactorµÄÕìÌý½¨Á¢ºÍrunÀ´Í³Ò»µ÷¶ÈÆðÀ´¡£    
   
     ½¨Á¢·þÎñÆ÷µÄµÚÒ»¸öÒª½â¾öµÄÎÊÌâ¾ÍÊÇ·þÎñÓëÍâ½çµÄ½»Á÷ЭÒ顣ЭÒéµÄ¶¨ÒåÔÚtwistedÖÐÊÇͨ¹ý¼Ì³Ðtwisted.internet.protocol.ProtocolÀàÀ´ÊµÏֵġ£ÔÚЭÒéÖÐÄã¿ÉÒÔ¶¨ÒåÁ¬½Ó¡¢Êý¾Ý½ÓÊÕ¡¢¶Ï¿ªÁ¬½ÓµÈһϵÁеÄʼþÈç¹û½øÐÐÏìÓ¦¡£µ«ÊǶÔÓÚËùÓÐÁ¬½ÓÉÏÀ´µÄЭÒéµÄ½¨Á¢¡¢³Ö¾ÃÅäÖÃÊý¾ÝµÄ´æ´¢ÕâÑùµÄÄÚÈݲ¢²»»á±£´æÔÚЭÒéÖС£    
   
  ³Ö¾ÃÅäÖÃÊý¾ÝµÄ´æ´¢Í¨³£¶¼»á±£´æÔÚ¹¤³§Àï¡£    
   
     ¹¤³§µÄ¶¨ÒåÔÚtwistedÖÐÊÇͨ¹ý¼Ì³Ðtwisted.internet.protocol.FactoryÀàÀ´ÊµÏֵġ£twistedÌṩÁËȱʡµÄ¹¤³§ÊµÏÖ×îΪÆÕͨµÄÐèÇó¡£Ëü»áʵÀý»¯Ã¿¸öЭÒ飬²¢ÇÒͨ¹ýÉèÖÃÿ¸öЭÒéÖÐfactoryÊôÐÔÀ´Ê¹Ð­Òé¿ÉÒÔʹÓõ½Ëü×Ô¼º£¬×öÕâ¸öÉèÖõÄ×÷ÓþÍÊÇÈÃЭÒéÔÚ½øÐд¦ÀíÁ¬½ÓÊý¾Ýʱ¿ÉÒÔʹÓõ½¹¤³§Öд洢µÄ³Ö¾ÃÅäÖÃÊý¾Ý¡£¹¤³§µÄÆô¶¯ÊÇÐèÒªreactorÕæÊµµÄ½¨Á¢ÕìÌý²¢Æô¶¯²Å¿ÉÒÔʵÏֵġ£    
   
    reactorÕìÌýµÄ½¨Á¢¿ÉÒԲο¼   twisted.internet.interfaces.IReactorTCP.listenTCP¡£ÕâʱÎÒÃÇÏÈֻ˵½¨Á¢TCP·þÎñÆ÷µÄÕìÌý£¬Èç¹ûÄãÐèÒªÆäËüÖÖÀàµÄÕìÌý½¨Á¢²Î¿¼IReactor*.listen*ϵÁÐAPI¡£    
   
  ×ܽáһϣ¬ÎÒÃÇÊéдһ¸ötwistedµÄDaemon£¬ÊµÖÊÉÏ»á¹Ø×¢Èý¸ö²ã´ÎµÄ¶ÔÏó¡£ËüÃÇ»¥Ïà¿ÉÅäÖ㬿ɶÀÁ¢¿ª·¢£¬Ö»ÐèҪͨ¹ý¼òµ¥µÄµ÷ÓÃÅäÖþͿɽáºÏʹÓᣵÚÒ»²ã´Î¾ÍÊÇÕìÌýµÄ½¨Á¢¡¢¹¤³§µÄ³õʼ»¯¡¢·þÎñÆ÷µÄÔËÐУ¬ËüÐèÒªreactorµÄ¿ª·¢¡£µÚ¶þ¸ö²ã´Î¾ÍÊÇ·þÎñµÄ³õʼ»¯¡¢Óû§Á¬½ÓµÄ½¨Á¢¡¢³Ö¾ÃÅäÖÃÊý¾ÝµÄ´æ´¢¡¢Ð­ÒéµÄʵÀý»¯£¬ËüÐèÒªfactoryµÄ¿ª·¢¡£µÚÈý¸ö²ã´Î¾ÍÊÇÓû§Á¬½Ó½¨Á¢ºóµÄʼþ´¦Àí£¬Õâ¾ÍÐèÒªprotocolµÄ¿ª·¢ÁË¡£    
-------------------------------------------------------------------------------------------------------------------------
ÉÏÃæÊÇÒýÓñðÈ˵ϰ£¬ÏÂÃæÊÇ×Ô¼ºµÄѧϰ£º
 
Ò»¡¢
protocol£ºÄÚ²¿ÊµÏÖµÄÖ÷ÒªÊÇÁ¬½ÓÔÚͨÐÅʱµÄ¶¯×÷£»
         ÄÚ²¿ÓÐtransport£¬¿É½øÐÐwrite(), getpeer()(host,port)
 &


Ïà¹ØÎĵµ£º

pythonµÄÒì³£Exception


Python µÄÒì³£´¦Àí»úÖÆ
Python´úÂë 
 try:    
  raise Exception("a", "b")    
    except Exception,e:    
  print e    
    finally:    
  print "final"    
('a', ......

»°ËµPython£¨Ð´ÔÚÇ°ÃæµÄ»°£©

±¾ÏµÁÐÎÄÕ²»»á½éÉÜÖîÈç°²×°PythonÖ®ÀàµÄÎÊÌ⣬Ҳ²»Ïëд³É¹ØÓÚPythonµÄ½Ì¿ÆÊé¡£ÊÂʵÉ϶ÔÓÚ³ÌÐòÔ±£¬Python¸ù±¾²»ÐèÒªºñºñµÄÈëÃÅÊé¼®£¬ÊÖ±ßÒ»±¾PythonÎĵµ¼´¿É¡£ÒòΪÄã»á·¢ÏÖ£¬ÊÔ×ÅÖ´ÐÐÒ»¶ÎÄãÈÏΪ¿ÉÄܳɹ¦µÄ´úÂ룬Python»áÏñÆÚÍûµÄÄÇÑùÔËÐС£
ÎÄÕ½«»á½éÉÜÁ½Î»Ö÷È˹«£ºÐ¡²ËºÍС°×£¬Á½ÈËÊÇ´óÈýѧÉú£¬Ñ§Ï°¹ýCºÍJava¿Î³Ì¡£±¾Îļ ......

PythonÖ®ÃÀ DecoratorÉîÈëÏê½â(Ò»)

There should be one—--and preferably only one –--obvious way to do it.
                                     ......

[Ô­´´]PythonÄÚ´æÐ¹Â©²é¿´Æ÷ʵÏÖ

[Ô­´´]PythonÄÚ´æÐ¹Â©²é¿´Æ÷ʵÏÖ
by AKara 2009-04-23 @ http://blog.csdn.net/akara @ akaras@163.com
   
---------------------------------------------------------------------
  Ϊ¸üºÃ¶¨Î»PythonÄÚ´æÐ¹Â©Çé¿ö£¬Ð´ÁËÒ»¸öеÄPythonÄÚ´æÐ¹Â©²é¿´Æ÷Ä£¿é¡£
Ä£¿éÓÐÈçϹ¦ÄÜ£º
  * ½«ËùÓ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ