我想在服务中运行多个线程。像谷歌文档例子: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