我想在服務中運行多個線程。像谷歌文檔例子:Android多線程服務
http://developer.android.com/guide/components/services.html
但是,因爲你處理每次調用onStartCommand()自己, 可以同時執行多個請求。這不是 的例子,但如果這就是你想要的,那麼你可以爲每個請求創建一個新的 線程並立即運行它們(而不是等待前一個請求完成的 )。
我怎樣才能同時執行多個請求?
例如,我想要啓動10個線程取決於Message.what。
如何以及在哪裏創建這10個線程?在OnCreate
在服務?
但是OnCreate
只在創建服務時執行一次。但如果我想添加線程服務dynamically
和generate message
取決於intent extras
?例如:
Intent intent1 = new Intent(this, SimpleService.class);
intent1.putExtra("what", 1);
Intent intent2 = new Intent(this, SimpleService.class);
intent2.putExtra("what", 2);
...
startService(intent1);
startService(intent2);
...
,我應該創建10個處理器和10尺蠖每個線程?
謝謝!
如果您需要對每個'startService'調用做出反應,您可以使用'onStartCommand'。 'onCreate'只被調用一次。目前還不清楚你想達到什麼目標。 – eleven
多個請求意味着網絡電話? –
@Mustansar Saeed,我的意思是這樣的:我收到網絡請求發送聯繫人並在服務中發送它們,同時發送聯繫人我收到請求發送文件,我想用不同的線程使用相同的服務發送此文件,同時發送聯繫人和文件的另一個請求可以來,等等。 (對不起,延遲迴復,但我沒有任何關於評論和答案的通知電子郵件)。 – jQuick