首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实施股票价格预警系统的正确途径

实施股票价格预警系统的正确途径
EN

Stack Overflow用户
提问于 2012-12-14 06:07:21
回答 1查看 365关注 0票数 0

以前,在桌面环境下,要实现股票价格预警系统,以下是我所做的。

  1. 生成运行Thread的无穷大。
  2. 线程将从股票服务器执行股票价格查询。
  3. 线程将根据检索到的股票价格执行所有必要的警报操作。
  4. 线程休眠N个周期。(N可以说是30分钟)
  5. 回到2。

当谈到移动环境时,电源效率的使用是一个主要的考虑因素。即使当我使用back按钮“关闭”应用程序时,库存警报机制也应该继续运行。

有两条路能从我的脑海中走出。

使用服务

  1. 生成运行Service的无穷大。
  2. 该服务将从股票服务器执行股票价格查询。
  3. 该服务将根据检索到的股票价格执行所有必要的警报操作。
  4. 服务的睡眠期为N期。(N可以说是30分钟)
  5. 回到2。

使用AlarmManager

  1. BroadcastReceiver中安装AlarmManager
  2. 广播收发器的onReceive将在下一个N期触发。
  3. 当触发BroadcastReceiver时,从股票服务器执行股票价格查询。
  4. BroadcastReceiver将根据检索到的股票价格执行所有必要的警报操作。
  5. 在从onReceive返回之前,在下一个N期在AlarmManager中安装另一个BroadcastReceiver

我在想,哪条路更好?除了这两种方法之外,还有其他更好的方法吗?在我看来, AlarmManager更好,因为我们不需要长时间睡觉,这似乎是在浪费资源吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-14 06:13:31

使用AlarmManager触发BroadcastReceiver,然后让BroadcastReceiver启动IntentService

BroadcastReceiver不应该执行任何长期运行的任务,但是它可以启动一个Service来完成工作。IntentService (扩展Service)将在工作线程上工作,然后自动终止。

请参阅IntentService

扩展IntentService类

换句话说,您可以将正在考虑的两种方式结合起来,但不需要持续运行的Service

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13873570

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档