2006年09月28日 星期四 14:06
ÓÐÒ»¸öthreading.Thread (target=fun, args=()).start () »¹ÓÐÒ»¸öthread.start_new_thread (fun, ()) ºóÒ»¸ö±È½Ï¼òµ¥,µ«ÊÇÊäÈëºó²»»áÖ±½Ó½áÊø,ÐèÒªÔÙ°´Ò»Ï¼üÅ̲ÅÐÐ,µÚÒ»¸ö¾Í¿ÉÒÔÖ±½Ó½áÊø. ÊDz»ÊÇÓÐÎÊÌâÄØ? -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20060928/c06d6d63/attachment.html
2006年09月28日 星期四 14:36
On 9/28/06, cat street <gamcat在gmail.com> wrote: > 有一个threading.Thread (target=fun, args=()).start () > 还有一个thread.start_new_thread (fun, ()) > 后一个比较简单,但是输入后不会直接结束,需要再按一下键盘才行,第一个就可以直接结束. 是不是有问题呢? 应该没有问题,执行完应该自动结束.你可以打印一些信息看一看执行到什么地方了. -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou
2006年09月28日 星期四 14:39
ÎÒµÄfunÊÇÕâÑùµÄ: def fun (): print 'hi' ´ó¼Ò¿´¿´ÓÐûÓвîÒì. 2006/9/28, limodou <limodou在gmail.com>: > > On 9/28/06, cat street <gamcat在gmail.com> wrote: > > ÓÐÒ»¸öthreading.Thread (target=fun, args=()).start () > > »¹ÓÐÒ»¸öthread.start_new_thread (fun, ()) > > ºóÒ»¸ö±È½Ï¼òµ¥,µ«ÊÇÊäÈëºó²»»áÖ±½Ó½áÊø,ÐèÒªÔÙ°´Ò»Ï¼üÅ̲ÅÐÐ,µÚÒ»¸ö¾Í¿ÉÒÔÖ±½Ó½áÊø. ÊDz»ÊÇÓÐÎÊÌâÄØ? > > Ó¦¸ÃûÓÐÎÊÌâ,Ö´ÐÐÍêÓ¦¸Ã×Ô¶¯½áÊø.Äã¿ÉÒÔ´òӡһЩÐÅÏ¢¿´Ò»¿´Ö´Ðе½Ê²Ã´µØ·½ÁË. > > -- > I like python! > UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad > My Blog: http://www.donews.net/limodou > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20060928/4da4e1e5/attachment-0001.html
2006年09月28日 星期四 14:56
On 9/28/06, cat street <gamcat在gmail.com> wrote: > 我的fun是这样的: > def fun (): > print 'hi' > 大家看看有没有差异. > 你的问题可能是这样的:你的主程序可能非常简单,这样在运行子线程时,主线程没有等待子线程就结束的.在一般的教程里面都使用join()来等待子线程结束.如果主线程不等待子线程结束就自行结束的话,这样出现的情况就象你说的是程序好象没有结束.简单的不使用join()也可以让主线程sleep()一段时间以确保子线程结束,你这样再试一试应该就没有问题了.所以线程同步也是很重要的.如果希望主线程结束,子线程强制结束,那需要使用Thread类,同时调用它的setDaemon(True)来保证退出即可. -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou
2006年09月28日 星期四 14:58
刚刚看了一些,在交互模式下确实有这个问题,但是如果写到文件中,定义一个模块就不会出问题。
2006年09月28日 星期四 15:12
˵µÄ¶Ô°¡,ÎÒ¾ÍÊÇÔÚ½»»¥Ä£Ê½±àµÄ,ÕâÑù¾ÍûÎÊÌâÁË! thread.start_new_thread (fun, ()); time.sleep (0) µ«ÄǸöjoin»¹²»»áÓÃ... 2006/9/28, limodou <limodou在gmail.com>: > > On 9/28/06, cat street <gamcat在gmail.com> wrote: > > ÎÒµÄfunÊÇÕâÑùµÄ: > > def fun (): > > print 'hi' > > ´ó¼Ò¿´¿´ÓÐûÓвîÒì. > > > ÄãµÄÎÊÌâ¿ÉÄÜÊÇÕâÑùµÄ:ÄãµÄÖ÷³ÌÐò¿ÉÄܷdz£¼òµ¥,ÕâÑùÔÚÔËÐÐ×ÓÏß³Ìʱ,Ö÷Ïß³ÌûÓеȴý×ÓÏ߳̾ͽáÊøµÄ.ÔÚÒ»°ãµÄ½Ì³ÌÀïÃ涼ʹÓÃjoin > ()À´µÈ´ý×ÓÏ߳̽áÊø.Èç¹ûÖ÷Ï̲߳»µÈ´ý×ÓÏ߳̽áÊø¾Í×ÔÐнáÊøµÄ»°,ÕâÑù³öÏÖµÄÇé¿ö¾ÍÏóÄã˵µÄÊdzÌÐòºÃÏóûÓнáÊø.¼òµ¥µÄ²»Ê¹ÓÃjoin > ()Ò²¿ÉÒÔÈÃÖ÷Ïß³Ìsleep()Ò»¶Îʱ¼äÒÔÈ·±£×ÓÏ߳̽áÊø,ÄãÕâÑùÔÙÊÔÒ»ÊÔÓ¦¸Ã¾ÍûÓÐÎÊÌâÁË.ËùÒÔÏß³Ìͬ²½Ò²ÊǺÜÖØÒªµÄ.Èç¹ûÏ£ÍûÖ÷Ï߳̽áÊø > ,×ÓÏß³ÌÇ¿ÖƽáÊø,ÄÇÐèҪʹÓÃThreadÀà,ͬʱµ÷ÓÃËüµÄsetDaemon(True)À´±£Ö¤Í˳ö¼´¿É. > > -- > I like python! > UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad > My Blog: http://www.donews.net/limodou > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20060928/e65a22a2/attachment.htm
2006年09月28日 星期四 15:27
On 9/28/06, cat street <gamcat在gmail.com> wrote: > 说的对啊,我就是在交互模式编的,这样就没问题了! > thread.start_new_thread (fun, ()); time.sleep (0) > 但那个join还不会用... > join的话一般要先生成线程对象,但使用start_new_thread并不返回.所以要使用Thread()来创建线程才行.你可以查一查教程,许多都有。 -- I like python! UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad My Blog: http://www.donews.net/limodou
2006年09月28日 星期四 23:19
A thread can be flagged as a ``daemon thread''. The significance of this flag is that the entire Python program exits when only daemon threads are left. The initial value is inherited from the creating thread. The flag can be set with the setDaemon() method and retrieved with the isDaemon() method. 是不是反了? On 9/28/06, limodou <limodou在gmail.com> wrote: > > On 9/28/06, cat street <gamcat在gmail.com> wrote: > > 我的fun是这样的: > > def fun (): > > print 'hi' > > 大家看看有没有差异. > > > 你的问题可能是这样的:你的主程序可能非常简单,这样在运行子线程时,主线程没有等待子线程就结束的.在一般的教程里面都使用join > ()来等待子线程结束.如果主线程不等待子线程结束就自行结束的话,这样出现的情况就象你说的是程序好象没有结束.简单的不使用join > ()也可以让主线程sleep()一段时间以确保子线程结束,你这样再试一试应该就没有问题了.所以线程同步也是很重要的.如果希望主线程结束 > ,子线程强制结束,那需要使用Thread类,同时调用它的setDaemon(True)来保证退出即可. > > -- > I like python! > UliPad <>: http://wiki.woodpecker.org.cn/moin/UliPad > My Blog: http://www.donews.net/limodou > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -- Linker M Lin linkerlin88在gmail.com linker.m.lin在gmail.com ※※※※※※※※※ ※※我思故我在※※ ※※※※※※※※※ -------------- 下一部分 -------------- 一个HTML附件被移除... URL: http://python.cn/pipermail/python-chinese/attachments/20060928/98d0f332/attachment.htm
Zeuux © 2025
京ICP备05028076号