2
我正在用python下載urllib2
的圖像。這些操作被定時器調用,所以有時會掛起我的程序。可以使用urllib2
和線程嗎?將圖像載入新線程
我當前的代碼:
f = open('local-path', 'wb')
f.write(urllib2.urlopen('web-path').read())
f.close()
那麼,如何在運行新線程的代碼?
我正在用python下載urllib2
的圖像。這些操作被定時器調用,所以有時會掛起我的程序。可以使用urllib2
和線程嗎?將圖像載入新線程
我當前的代碼:
f = open('local-path', 'wb')
f.write(urllib2.urlopen('web-path').read())
f.close()
那麼,如何在運行新線程的代碼?
這是我想你所要求的一個非常基本的例子。是的,正如RestRisiko所說,urllib2
是線程安全的,如果這實際上是你所要求的。
import threading
import urllib2
from time import sleep
def load_img(local_path, web_path):
f = open(local_path, 'wb')
f.write(urllib2.urlopen(web_path).read())
f.close()
local_path = 'foo.txt'
web_path = 'http://www.google.com/'
img_thread = threading.Thread(target=load_img, args=(local_path, web_path))
img_thread.start()
while img_thread.is_alive():
print "doing some other stuff while the thread does its thing"
sleep(1)
img_thread.join()
urllib2是線程安全的 - 用於記錄。