Python 在Treeview-pygtk中添加项目的线程

Python 在Treeview-pygtk中添加项目的线程,python,multithreading,pygtk,Python,Multithreading,Pygtk,我正在尝试在pygtk中开发一个下载程序 因此,当用户添加url时,会发生以下操作 addUrl() 哪个叫 validateUrl() getUrldetails() 因此,由于urllib.urlopen延迟,将url添加到列表中需要一些时间 所以我尝试实现线程。我在主窗口中添加了以下代码 线程。启动新线程(addUrl,(self,url,) 我传递了对主窗口的引用,以便可以从线程访问列表 但是似乎什么也没发生我想你应该先检查一下这个线程。 例如: 导入队列 导入线程 导入urll

我正在尝试在pygtk中开发一个下载程序 因此,当用户添加url时,会发生以下操作

  • addUrl()
哪个叫

  • validateUrl()

  • getUrldetails()

因此,由于
urllib.urlopen
延迟,将url添加到列表中需要一些时间 所以我尝试实现线程。我在主窗口中添加了以下代码

线程。启动新线程(addUrl,(self,url,)
我传递了对主窗口的引用,以便可以从线程访问列表
但是似乎什么也没发生

我想你应该先检查一下这个线程。 例如: 导入队列 导入线程 导入urllib2

# called by each thread
def get_url(q, url):
    q.put(urllib2.urlopen(url).read())

theurls = '''http://google.com http://yahoo.com'''.split()

q = Queue.Queue()

for u in theurls:
    t = threading.Thread(target=get_url, args = (q,u))
    t.daemon = True
    t.start()

s = q.get()
print s

希望这对你有帮助

你的问题到底是什么?什么列表?我想你应该先检查一下这个线程。希望这对你有帮助。