目前我还没有任何代码,但我遇到了将Java应用程序实现到无线传感器上的情况。只有一个主要的方法。
将有多个其他无线传感器可以连接到我的传感器。我的传感器需要根据其他传感器提供给我的信息进行计算。每个传感器都可以选择是否要参与计算。每1秒,我的传感器就计算一次。
因此,基本上,我需要的是监听传入的传感器,为它们提供一个可以交互的线程,并从每个传感器检索信息。
我的问题是,在我的应用程序中,我如何侦听传入的传感器(阻塞呼叫),以及如何释放我的应用程序来执行其计算?
发布于 2012-03-21 23:38:26
从高层次来看,这就是您的应用程序要做的事情。
==Main Thread==
complicated)
<代码>G 211
==Handler Thread==
thread
。
==Processing Thread==
从Handler Thread
检索的
数据
发布于 2012-03-21 23:43:36
您需要另一个接收所有通信线程信息的线程。您应该查看java.util.concurrent中的实用程序,比如允许线程安全地将数据传递给另一个线程的BlockingQueue。
最重要的是,你应该读很多关于多线程的文章:它不是一个琐碎的话题。
发布于 2012-03-21 23:58:33
这会让你开始。根据需要添加错误/异常检查/处理。
public class Test {
static class WorkTask42 implements Runnable {
public void run() {
// background work
}
}
public static void main(String... args) throws Exception {
// repeat for each background task
WorkTask42 wt = new WorkTask42();
Thread a = new Thread(wt);
a.setDeamon(true);
a.start();
}
} https://stackoverflow.com/questions/9814142
复制相似问题