2005年07月18日 星期一 08:57
最近在运行一个计算量比较大的程序要一个星期才能完成,我算了3天才想到是否可以用多线程方法,看了看书,想用threading.Thread的方法做, 有几个问题不是很清楚: 1。我想同时只能开五个线程,有线程结束才能开新线程,不知道怎么做到监视线程结束,好像有个isAlive和isDeamon函数,但如何做到实时监视呢,我想是不是线程结束自动生成一条消息,我得到消息就可以开新线程了。 2。每个线程都要调用另一个程序fasta34,不知道这样会不会起冲突,还是与那个程序本身是否支持有关。 大家给点提示。
2005年07月18日 星期一 09:13
1. 等待线程退出thread.join方法 2. 调用fasta34主要看fasta34自己能不能起多进程 另外,python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程 和进程间通讯。 -----Original Message----- From: python-chinese-bounces at lists.python.cn [mailto:python-chinese-bounces at lists.python.cn] On Behalf Of gyb tension Sent: 2005年7月18日 8:57 To: python-chinese at lists.python.cn Subject: [python-chinese] 有关多线程 最近在运行一个计算量比较大的程序要一个星期才能完成,我算了3天才想到是否 可以用多线程方法,看了看书,想用threading.Thread的方法做, 有几个问题不是很清楚: 1。我想同时只能开五个线程,有线程结束才能开新线程,不知道怎么做到监视线程结 束,好像有个isAlive和isDeamon函数,但如何做到实时监视呢,我想是不是线程结束 自动生成一条消息,我得到消息就可以开新线程了。 2。每个线程都要调用另一个程序fasta34,不知道这样会不会起冲突,还是与那个程序 本身是否支持有关。 大家给点提示。
2005年07月18日 星期一 09:14
首先要看程序中是否有并发的成分,如果整个程序仅仅单个流程的,那么在单CPU的机 器上,多线程并不能减少运行时间,反而会增加运行时间; 如果程序中没有并发成分,加速的办法只好将其中关键部分的代码从Python转换到C或 C++; 关于线程的问题, 1、可以使用threading中的Condition对象; 2、看你怎么调用另外的程序了,如果就是用system(),你的程序会变成多进程; __ Best Regards, Kebo Wang >-----Original Message----- >From: python-chinese-bounces at lists.python.cn >[mailto:python-chinese-bounces at lists.python.cn] On Behalf Of >gyb tension >Sent: Monday, July 18, 2005 8:57 AM >To: python-chinese at lists.python.cn >Subject: [python-chinese] 有关多线程 > > >最近在运行一个计算量比较大的程序要一个星期才能完成,我算了3天才想到是否可以 用多线程方法,看了看书,想用threading.T >hread的方法做, >有几个问题不是很清楚: >1。我想同时只能开五个线程,有线程结束才能开新线程,不知道怎么做到监视线程结 束,好像有个isAlive和isDeamon函数, >但如何做到实时监视呢,我想是不是线程结束自动生成一条消息,我得到消息就可以 开新线程了。 >2。每个线程都要调用另一个程序fasta34,不知道这样会不会起冲突,还是与那个程 序本身是否支持有关。 >大家给点提示。 >
2005年07月18日 星期一 09:16
python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程和进程间通讯。 铭记于心,谢。 On 7/18/05, LianQiao <lianqiao at 263.net> wrote: > > python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程 > 和进程间通讯。 -- ############################################# # "your future depends on your dreams." so go to sleep. # save water. shower with your girlfriend. # # Welcom2 : http//blog.csdn.net/auding1900/ ############################################# -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20050718/cdd63790/attachment.htm
2005年07月18日 星期一 09:22
这个忘了:) __ Best Regards, Kebo Wang _____ From: python-chinese-bounces at lists.python.cn [mailto:python-chinese-bounces at lists.python.cn] On Behalf Of Spirit Auding Sent: Monday, July 18, 2005 9:16 AM To: python-chinese at lists.python.cn Subject: Re: [python-chinese] 有关多线程 python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程和进程 间通讯。 铭记于心,谢。 On 7/18/05, LianQiao <lianqiao at 263.net> wrote: python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程 和进程间通讯。 -- ############################################# # "your future depends on your dreams." so go to sleep. # save water. shower with your girlfriend. # # Welcom2 : http//blog.csdn.net/auding1900/ ############################################# -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.exoweb.net/pipermail/python-chinese/attachments/20050718/86a713c1/attachment.html
2005年07月18日 星期一 11:32
不是很理解,能具体讲讲吗? 在 05-7-18,Spirit Auding<auding at gmail.com> 写道: > > python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程和进程间通讯。 > > 铭记于心,谢。 > > On 7/18/05, LianQiao <lianqiao at 263.net> wrote: > > python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程 > > 和进程间通讯。 > > > > -- > ############################################# > # "your future depends on your dreams." so go to sleep. > # save water. shower with your girlfriend. > # > # Welcom2 : http//blog.csdn.net/auding1900/ > ############################################# > _______________________________________________ > python-chinese list > python-chinese at lists.python.cn > http://python.cn/mailman/listinfo/python-chinese > > >
2005年07月18日 星期一 11:59
On 7/18/05, LianQiao <lianqiao at 263.net> wrote: [...] > 另外,python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程 > 和进程间通讯。 如果有可以并行的I/O操作的话,多线程是可以提高性能的。 -- Qiangning Hong I'm usually annoyed by IDEs because, for instance, they don't use VIM as an editor. Since I'm hooked to that, all IDEs I've used so far have failed to impress me. -- Sybren Stuvel @ c.l.python Get Firefox! <http://www.spreadfirefox.com/?q=affiliates&id=67907&t=1>
2005年07月18日 星期一 12:01
做一个主控线程,由它生成工作线程。工作线程退出的时候向主控线程报告,主控线程再生成新的工作线程。 虽说Python有个GIL但是多线程还是能提高性能的,关键看是哪方面的性能。对于密集运算,好像是没用,但是对于IO,还是很管用的。 On 7/17/05, gyb tension <tensiongyb at gmail.com> wrote: > 不是很理解,能具体讲讲吗? > > 在 05-7-18,Spirit Auding<auding at gmail.com> 写道: > > > > python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程和进程间通讯。 > > > > 铭记于心,谢。 > > > > On 7/18/05, LianQiao <lianqiao at 263.net> wrote: > > > python的线程是用户态线程,多线程不会提高性能。想要并行,必须要用多进程 > > > 和进程间通讯。 > > > > > > > > -- > > ############################################# > > # "your future depends on your dreams." so go to sleep. > > # save water. shower with your girlfriend. > > # > > # Welcom2 : http//blog.csdn.net/auding1900/ > > ############################################# > > _______________________________________________ > > python-chinese list > > python-chinese at lists.python.cn > > http://python.cn/mailman/listinfo/python-chinese > > > > > > > > _______________________________________________ > python-chinese list > python-chinese at lists.python.cn > http://python.cn/mailman/listinfo/python-chinese > > >
Zeuux © 2025
京ICP备05028076号