在我的android應用程序中會有一些文件在一段時間內下載一次。 所以我寫了一個下載功能是這樣的:單獨的線程下載功能
public static void download(Context context, String url, String path) {
URLConnection conection = new URL(url).openConnection();
conection.connect();
InputStream is = new URL(url).openStream();
OutputStream os = context.openFileOutput(path, 0);
pipe(is, os); // write from inputstream to outputstream
os.close();
}
我不能決定把這個功能在一個單獨的線程或不?
當我把它放在一個單獨的線程中,然後如果我想用for-loop降低10個文件,那麼它們都開始在10個同時分開的線程中下載,這是不好的! 當我沒有放在一個單獨的線程,然後主線程必須等到下載完成,這是不好的!
解決方案是什麼?
螺紋+固定大小的池執行人 – njzk2 2014-11-03 18:41:09