线程(服务内)在 Android 下进行通信的正确、高效的方式是什么?
我看过 Intents(序列化开销)、HandlerThreads 和 Loopers(捆绑开销)。
接收线程应该有(同步的)队列,可以向其中添加对象(在编译时已知的类型)。
我以前为 JavaME 编写过这样的功能,但我的印象是 Android 将使用编译时已知类型在线程之间进行通信的“标准”有效方式。
我错过了一些基本的东西吗?(我最近没有太多 JavaME/1.3 以外的 Java 经验。)
线程(服务内)在 Android 下进行通信的正确、高效的方式是什么?
我看过 Intents(序列化开销)、HandlerThreads 和 Loopers(捆绑开销)。
接收线程应该有(同步的)队列,可以向其中添加对象(在编译时已知的类型)。
我以前为 JavaME 编写过这样的功能,但我的印象是 Android 将使用编译时已知类型在线程之间进行通信的“标准”有效方式。
我错过了一些基本的东西吗?(我最近没有太多 JavaME/1.3 以外的 Java 经验。)
向线程发送消息的本机方式是Handler
's. 如果这不符合您的要求(哪些是?),您可以使用 Java 原语和/或 java.util.concurrent
类自己实现一个线程消息传递系统。
使用Handlers和MessageQueues怎么样?