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

Python±ê×¼¿âµÄthreading.ThreadÀà

Õâ¸öÀà±íʾÔÚµ¥¶ÀµÄ¿ØÖÆÏß³ÌÖÐÔËÐеĻ¡£ÓÐÁ½ÖÖ·½·¨¿ÉÒÔÖ¸¶¨ÕâÖֻ£¬¸ø¹¹Ô캯Êý´«µÝ»Øµ÷¶ÔÏ󣬻òÕßÔÚ×ÓÀàÖÐÖØÐ´run() ·½·¨¡£ÆäËû·½·¨£¨³ýÁ˹¹Ô캯Êý)¶¼²»Ó¦ÔÚ×ÓÀàÖб»ÖØÐ´¡£»»¾ä»°Ëµ£¬ÔÚ×ÓÀàÖÐÖ»ÓÐ__init__()ºÍrun()·½·¨±»ÖØÐ´¡£
Ò»µ©Ï̶߳ÔÏó±»´´½¨£¬ËüµÄ»î¶¯ÐèҪͨ¹ýµ÷ÓÃÏ̵߳Ästart()·½·¨À´Æô¶¯¡£Õâ·½·¨ÔÙµ÷ÓÿØÖÆÏß³ÌÖеÄrun·½·¨¡£
Ò»µ©Ï̱߳»¼¤»î£¬ÔòÕâÏ̱߳»ÈÏΪÊÇ'alive'(»î¶¯)¡£µ±ËüµÄrun()·½·¨ÖÕֹʱ-Õý³£Í˳ö»òÅ׳öδ´¦ÀíµÄÒì³££¬Ôò»î¶¯×´Ì¬Í£Ö¹¡£isAlive()·½·¨²âÊÔÏß³ÌÊÇ·ñÊǻµÄ¡£
Ò»¸öÏß³ÌÄܵ÷ÓñðµÄÏ̵߳Äjoin()·½·¨¡£Õ⽫×èÈûµ÷ÓÃỊ̈߳¬Ö±µ½ÓµÓÐjoin()·½·¨µÄÏ̵߳ĵ÷ÓÃÖÕÖ¹¡£
Ïß³ÌÓÐÃû×Ö¡£Ãû×ÖÄÜ´«¸ø¹¹Ô캯Êý£¬Í¨¹ýsetName()·½·¨ÉèÖã¬ÓÃgetName()·½·¨»ñÈ¡¡£
Ïß³ÌÄܱ»±êʶΪ'daemon thread'(ÊØ»¤Ïß³Ì).Õâ±êÖ¾µÄÌØµãÊǵ±Ê£ÏµÄÈ«ÊÇÊØ»¤Ïß³Ìʱ£¬ÔòPython³ÌÐòÍ˳ö¡£ËüµÄ³õʼֵ¼Ì³ÐÓÚ´´½¨Ï̡߳£Õâ±êÖ¾ÓÃsetDaemon()·½·¨ÉèÖã¬ÓÃisDaemon()»ñÈ¡¡£
´æÔÚ'main thread'(Ö÷Ïß³Ì),Ëü¶ÔÓ¦ÓÚPython³ÌÐòµÄ³õʼ¿ØÖÆÏ̡߳£Ëü²»ÊǺǫ́Ï̡߳£
ÓпÉÄÜ´æÔÚ'dummy thread objects'(ÑÆÏ̶߳ÔÏó)±»´´½¨¡£ÕâЩÏ̶߳ÔÓ¦ÓÚ'alien threads'(ÍⲿÏß³Ì),ËüÃÇÔÚPythonµÄÏß³ÌÄ£ÐÍÖ®Íâ±»Æô¶¯£¬ÏñÖ±½Ó´ÓCÓïÑÔ´úÂëÖÐÆô¶¯¡£ÑÆÏ̶߳ÔÏóÖ»ÓÐÓÐÏ޵ŦÄÜ£¬ËüÃÇ×ÜÊDZ»ÈÏΪÊǻµÄ£¬ÊØ»¤Ị̈߳¬²»ÄÜʹÓÃjoin()·½·¨¡£ËüÃÇ´Ó²»Äܱ»É¾³ý£¬¼ÈÈ»ËüÎÞ·¨¼à²âµ½ÍⲿÏ̵߳ÄÖÐÖ¹¡£
class Thread(group=None, target=None, name=None, args=(), kwargs={})
¹¹Ô캯ÊýÄÜ´øÓйؼü×Ö²ÎÊý±»µ÷Óá£ÕâЩ²ÎÊýÊÇ:
group Ó¦µ±Îª None£¬Îª½«À´ÊµÏÖThreadGroupÀàµÄÀ©Õ¹¶ø±£Áô¡£
target ÊDZ» run()·½·¨µ÷ÓõĻص÷¶ÔÏó. ĬÈÏӦΪNone, Òâζ×ÅûÓжÔÏó±»µ÷Óá£
name ΪÏß³ÌÃû×Ö¡£Ä¬ÈÏ£¬ÐÎʽΪ'Thread-N'µÄΨһµÄÃû×Ö±»´´½¨£¬ÆäÖÐN ÊDZȽÏСµÄÊ®½øÖÆÊý¡£
argsÊÇÄ¿±êµ÷ÓòÎÊýµÄtuple£¬Ä¬ÈÏΪ()¡£
kwargsÊÇÄ¿±êµ÷ÓõIJÎÊýµÄ¹Ø¼ü×Ödictionary£¬Ä¬ÈÏΪ{}¡£
Èç¹û×ÓÏß³ÌÖØÐ´Á˹¹Ô캯Êý£¬ËüÓ¦±£Ö¤µ÷ÓûùÀàµÄ¹¹Ô캯Êý(Thread.__init__())£¬ÔÚÏß³ÌÖнøÐÐÆäËû¹¤×÷֮ǰ¡£
start() Æô¶¯Ï̻߳¡£
ÔÚÿ¸öÏ̶߳ÔÏóÖÐ×î¶à±»µ÷ÓÃÒ»´Î¡£Ëü°²ÅŶÔÏóµÄrun() ±»µ÷ÓÃÔÚÒ»µ¥¶ÀµÄ¿ØÖÆÏß³ÌÖС£
run()
ÓÃÒÔ±íʾÏ̻߳µÄ·½·¨¡£
Äã¿ÉÄÜÔÚ×ÓÀàÖØÐ´Õâ·½·¨¡£±ê×¼µÄ run()·½·¨µ÷ÓÃ×÷Ϊtarget´«µÝ¸ø¶ÔÏó¹¹Ô캯ÊýµÄ»Øµ÷¶ÔÏó¡£Èç¹û´æÔÚ²ÎÊý£¬Ò»ÏµÁйؼü×Ö²ÎÊý´ÓargsºÍkwargs²ÎÊýÏàÓ¦µØÆð×÷Óá£
join([


Ïà¹ØÎĵµ£º

python¶ÁȡĿ¼ÏÂÎļþ²¢Éú³ÉÈÕÖ¾

ºÜ³¤µÄÒ»¶Î´úÂ룬µ«ºÜÇå³þ¡£¹þ¹þ¡£
import os
from time import strftime
stamp=strftime("%Y-%m-%d %H:%M:%S")
logfile = 'F:\\test\\m-php-framework\\tmp\logs\\error_report.log'
path = 'F:\\test\\'
files = os.listdir(path)
bytes = 0
numfiles = 0
for f in files:
if f.startswith('t'): ......

ÈçºÎÔÚApacheÏÂÉèÖÃPython(WIN,CGI·½·¨)

¹ØÓÚPython£¬±¾È˲»Ïë¶à˵ÁË£¬Èç¹û²»ÖªµÀʲôÊÇPython£¬¿ÉÒÔ¿´¡¶Ê²Ã´ÊÇPython
£¿¡·Ò»ÎÄ¡£Python¿ÉÒÔ¿ª·¢CGI³ÌÐò£¬ÄÇôÔÚApacheÏÂÓ¦ÈçºÎÅäÖÃÄØ£¿±¾ÎÄÖ»½²ÊöÁËÈçºÎ
ÒÔCGI·½Ê½ÅäÖÃApache£¬Ê¹ÆäÖ§³ÖPython³ÌÐò¡£ÆäËü·½Ê½£¬Èçmod_pythonÔò²»ÔÚÌÖÂÛ·¶Î§
(ÆäʵÊÇûÅä³É¹¦:-)¡£ÎÒËùʹÓõÄϵͳ»·¾³ÎªWindows 2000, Apache 1.3.19£ ......

Python MySQLdb ²éѯ·µ»Ø×Öµä½á¹¹


Python MySQLdb ²éѯ·µ»Ø×Öµä½á¹¹ smallfish
MySQLdbĬÈϲéѯ½á¹û¶¼ÊÇ·µ»Øtuple£¬Êä³öʱºò²»ÊǺܷ½±ã£¬±ØÐë°´ÕÕ0£¬1ÕâÑù¶ÁÈ¡£¬ÎÞÒâÖÐÔÚÍøÉÏÕÒµ½¼òµ¥µÄÐ޸ķ½·¨£¬¾ÍÊÇ´«µÝÒ»¸öcursors.DictCursor¾ÍÐС£
ĬÈϳÌÐò£º
import MySQLdb
db = MySQLdb.connect(host = 'localhost', user = 'root', passwd = '123456', d ......

ʹÓÃCÓïÑÔÀ©Õ¹Python£¨Ò»£©

¿ª·¢»·¾³£ºUbuntu9.10,python2.6,gcc4.4.11,ubuntuϵÄpythonÔËÐаüºÍ¿ª·¢°üÊÇ·Ö¿ªµÄ£¬Òò´ËÐèÒªÔÚÐÂÀûµÃÀïÃæ°²×°python-all-dev,´Ó¶ø¿ÉÒÔÔÚ´úÂëÖÐÒýÓÃpythonµÄÍ·ÎļþºÍ¿â¡£2.ÏÂÃæÊÇÒ»¸ö×î¼òµ¥µÄ¿ÉÒÔ¹©pythonµ÷ÓõÄcÀ©Õ¹Ä£¿é£¬¼ÙÉèc³ÌÐòÎļþÃûΪfoo.c:´úÂë#include <Python.h>
static PyObject* foo_b ......

¹ØÓÚPythonÖк¯ÊýÖØÔØÎÊÌâµÄ˼¿¼

È«ÎÄÀ´×Ô£ºIT¹¤³Ì¼¼ÊõÍø http://www.systhinker.com/html/91/n-11591.html
×òÌìºÍ·ÉÌìÎèÕßÌÖÂÛ¾²Ì¬ÀàÐÍÓïÑԺͶ¯Ì¬ÀàÐÍÓïÑÔÓÅÁӱȽϵÄʱºò£¬Ëµµ½PythonûÓÐÖØÔØ»úÖÆµÄÎÊÌâ¡£
ºóÀ´ÏëÏëͦÓÐÒâ˼µÄ£¬°Ñ˼¿¼µÄ¾­¹ý¼Ç¼ÏÂÀ´£¬»¶Ó­ÅÄש¡£
ÖØÔØ£¨overload£©ºÍ¸²¸Ç£¨override£©£¬ÔÚC++£¬Java£¬C#µÈ¾²Ì¬ÀàÐÍÓïÑÔÀàÐÍÓïÑÔÖУ¬ÕâÁ½¸ö ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ