我正在编写一个通过串口执行某些操作的java GUI。由于我不希望它在等待响应时阻止,我认为有一个线程,这是一个更好的方法,但现在我面临两个选项,我不知道哪个会是效率更高:
这些操作都不是处理器密集型的,但我仍然想知道将线程永久保存在内存中是否明智。
答案 0 :(得分:2)
我会使用像
这样的单线程ExecutorServiceprivate final ExecutorService service = Executors.newSingleThreadExecutor();
service.submit(new Runnable() {
public void run() {
// task to perform here.
}
});
您可能需要一个不同的线程来读取和写入串行设备。
答案 1 :(得分:1)
看一下ExecutorService,我想这就是你所需要的。
根据Peter的建议,您可以使用newSingleThreadExecutor创建ExecutorService
并使用它来处理您的任务。