PythonµÄÄÚ´æÐ¹Â©¼°gcÄ£¿éµÄʹÓÃ
PythonµÄÄÚ´æÐ¹Â©¼°gcÄ£¿éµÄʹÓÃ
-- 6.11ÈÕ´íÎóÐÞÕý°æ
Horin|ºØÇÚ
Email: horin153@msn.com
Blog:
http://blog.csdn.net/horin153/
ÔÚ Python
ÖУ¬ÎªÁ˽â¾öÄÚ´æÐ¹Â©ÎÊÌ⣬²ÉÓÃÁ˶ÔÏóÒýÓüÆÊý£¬²¢»ùÓÚÒýÓüÆÊýʵÏÖ×Ô¶¯À¬»ø»ØÊÕ¡£
ÒòΪ Python
ÓÐÁË×Ô¶¯À¬»ø»ØÊÕ¹¦ÄÜ£¬²»ÉÙ³õѧÕß¾ÍÈÏΪ×Ô¼º´Ó´Ë¹ýÉÏÁ˺ÃÈÕ×Ó£¬²»±ØÔÙÊÜÄÚ´æÐ¹Â©µÄɧÈÅÁË¡£µ«Èç¹û²é¿´Ò»Ï Python Îĵµ¶Ô __del__()
º¯ÊýµÄÃèÊö£¬¾ÍÖªµÀºÃÈÕ×ÓÀïÒ²ÊÇÓÐÒõÔÆµÄ¡£ÏÂÃæÕª³Ò»µãÎĵµÄÚÈÝ£º
Some common situations that may
prevent the reference count of an object from going to zero include:
circular references between objects (e.g., a doubly-linked list or a
tree data structure with parent and child pointers); a reference to the
object on the stack frame of a function that caught an exception (the
traceback stored in sys.exc_traceback keeps the stack frame alive); or a
reference to the object on the stack frame that raised an unhandled
exception in interactive mode (the traceback stored in
sys.last_traceback keeps the stack frame alive).
¿É¼û£¬ÓÐ __del__()
º¯ÊýµÄ¶ÔÏó¼äµÄÑ»·ÒýÓÃÊǵ¼ÖÂÄÚ´æÐ¹Â©µÄÖ÷Ðס£Ìرð˵Ã÷£º¶ÔûÓÐ __del__() º¯ÊýµÄ Python
¶ÔÏó¼äµÄÑ»·ÒýÓã¬ÊÇ¿ÉÒÔ±»×Ô¶¯À¬»ø»ØÊÕµôµÄ¡£
ÈçºÎÖªµÀÒ»¸ö¶ÔÏóÊÇ·ñÄÚ´æÐ¹Â©ÁËÄØ£¿
·½·¨Ò»¡¢µ±ÄãÈÏΪһ¸ö¶ÔÏóÓ¦¸Ã±»Ïú»Ùʱ£¨¼´ÒýÓüÆÊýΪ 0£©£¬¿ÉÒÔͨ¹ý sys.getrefcount(obj)
À´»ñÈ¡¶ÔÏóµÄÒýÓüÆÊý£¬²¢¸ù¾Ý·µ»ØÖµÊÇ·ñΪ 0 À´ÅжÏÊÇ·ñÄÚ´æÐ¹Â©¡£Èç¹û·µ»ØµÄÒýÓüÆÊý²»Îª 0£¬ËµÃ÷Ôڴ˿̶ÔÏó obj
ÊDz»Äܱ»À¬»ø»ØÊÕÆ÷»ØÊÕµôµÄ¡£
·½·¨¶þ¡¢Ò²¿ÉÒÔͨ¹ý Python À©Õ¹Ä£¿é gc À´²é¿´²»ÄÜ»ØÊյĶÔÏóµÄÏêϸÐÅÏ¢¡£
Ê×ÏÈ£¬À´¿´Ò»¶ÎÕý³£µÄ²âÊÔ´úÂ룺
#--------------- code begin --------------
#
-*- coding: utf-8 -
Ïà¹ØÎĵµ£º
×î½üÔÚ´ÓÍ·¿ªÊ¼Ñ§Ï°Python, Ï£ÍûÓÃblog˳±ã¼Ç¼ÏÂÀ´Ò»Ð©Ð¡µÄ¼¼ÇÉ¡£
½ñÌì¼Ç¼µÚÒ»¸ö£º variable _
ÔÚpythonµÄ½»»¥sessionÖУ¬Ò²¾ÍÊDz»´øÎļþÃûÖ±½ÓÊäÈë"Python”Ö®ºópythonËù´´½¨µÄsession£¬
±äÁ¿"_"»á±£´æÉÏÒ»´Î¼ÆËãµÄ½á¹û¡£ÀýÈ磺
Õâ¸ö±äÁ¿¶Ô¾³£°Ñpythonµ±¼ÆËãÆ÷ÓõÄͬѧ¿ÉÄÜÓÐÓá£
²Î¿¼£ºsys.displayhook( ......
DecoratorsÊÇpythonÖбȽÏÄÑÒÔÀí½âµÄ¶«Î÷£¬µ±È»Èç¹ûÄã½Ó´¥¹ýjavaµÄannotation£¬»á·¢ÏÖÕâ¸öDecoratorsÔÚÓï·¨ÉϷdz£µÄÏàËÆ£¬µ«ÊÇÁ½ÕßµÄÉè¼Æ¶¯»úȴûʲô¹²Í¬µã£»
ÕâÀï½²µÄpythonÖеÄdecoratorsÊǶÔpythonÖеÄfunction/method×ö×°ÊΣ¬ÕâЩÐÞÊνöÊǵ±ÉùÃ÷Ò»¸öº¯Êý»òÕß·½·¨µÄʱºò£¬²Å»áÓ¦ÓõĶîÍâµ÷Óá£
pythonÖеÄdecorator·Ö ......
pythonµÄC¡¢c++À©Õ¹
http://blog.chinaunix.net/u3/110228/showart_2148725.html
pythonµÄÇ¿´ó²»½ö±íÏÖÔÚÆä¹¦ÄÜÉÏ£¬¶øÇÒ»¹±íÏÖÔÚÆäÀ©Õ¹ÄÜÁ¦ÉÏ¡£
ʹÓÃC/C++ºÜÈÝÒ×±àдpythonµÄÄ£¿é£¬À©Õ¹pythonµÄ¹¦ÄÜ¡£
ͬʱ½«ÐÔÄÜÒªÇó±È½Ï¸ßµÄ´úÂëʹÓÃC/C++±àд£¬ÄܸüºÃµÄÃÖ²¹
½Å±¾ÓïÑÔÖ´ÐÐËÙ¶ÈÂýµÄȱÏÝ¡£
1. pythonµÄCÓïÑÔÀ©Õ¹
1.1 ......
def test2():
32 db = util.DBUnit('mysql_ab') &nb ......
Ò»¡¢Ê¹ÓÃPythonÐèÒªÖªµÀµÄ
ÔÚ Windows ÉÏ£¬°²×° Python ÓÐÁ½ÖÖÑ¡Ôñ¡£
1¡¢ActiveState ÖÆ×÷µÄ ActivePython ÊÇרÃÅÕë¶Ô Windows µÄ Python Ì×¼þ£¬Ëü°üº¬ÁËÒ»¸öÍêÕûµÄ Python ·¢²¼¡¢Ò»¸öÊÊÓÃÓÚPython ±à³ÌµÄ IDE ÒÔ¼°Ò»Ð© PythonµÄ Windows À©Õ¹£¬ÌṩÁËÈ«²¿µÄ·ÃÎÊ Windows APIs µÄ·þÎñ£¬ÒÔ¼° Windows×¢²á±íµÄ×¢²áÐÅÏ¢¡£ËäÈ ......