java nanoHTTPD如何在Android中作为单个后台线程运行?
我的应用程序是使用nanoHTTPD作为Android UI上按键和输入文本的替代,以进行自动化和回归测试。目前,我有一个主UI线程和一个定制的nanoHTTPD在不同的线程中运行。考虑每个HTTP请求将在UI线程中很快地被服务。我认为,如果我可以强制nanoHTTPD不为每个传入请求启动新线程,那么我的模型可以简化。对于我的用例,我一点也不介意阻塞I/O模型。我发现有一种可插入的线程策略。是否可以修改以下内容,使一次只有一个web请求处于活动状态(阻止模式)
public static class DefaultAsyncRunner implements AsyncRunner {
private long requestCount;
@Override
public void exec(Runnable code) {
++requestCount;
Thread t = new Thread(code);
t.setDaemon(true);
t.setName("NanoHttpd Request Processor (#" + requestCount + ")");
t.start();
}
}
我可能还可以做更复杂的消息队列,但在一个线程中“简化”到nanoHTTPD似乎最简单
共 (0) 个答案