2011-03-11 97 views
0

我已经在我的Mac上创建了一个GUI来设置和启动一个使用PyQT4,Wing,QT和Python 2.6.6的数字集成器。问题是,当我从GUI运行集成器时,它比我从命令行粗略运行集成器的时间要长很多倍。数字GUI瓶颈

作为一个例子,1000年的整合在命令行上花了98秒,从GUI花了570秒。

在GUI中,集成从一个线程运行,然后返回。它使用一个队列来回传给GUI。

有没有人对瓶颈在哪里有任何想法?我怀疑其他人可能只是在小范围内遇到这样的事情。

t = threading.Thread(target=self.threadsafe_start_thread, args=(self.queue, self.selected)) 
t.start() 
+1

您是否试图以某种方式分析您的代码? – 9000 2011-03-11 23:55:08

回答

0

通常,在pyqt应用程序中使用python线程并不是一个好主意。请使用QThread

python和QThreads都调用相同的底层机制,但它们并不能很好地协同工作。我不知道这是否能解决您的问题,但它可能是问题的一部分。

0

你的线程代码大部分是Python代码吗?如果是,那么你可能是全球口译员锁定的受害者。