在我当前的项目中,如果需要异步写入db(记录一些数据),我们正在使用线程池执行程序。 因为它只是一个IO操作而不是为每个写调用使用线程,所以我们可以使用类似于事件驱动机制的东西。 单个线程将在while循环中运行并且将使异步db call.similar与java NIO完成网络调用。
答案 0 :(得分:1)
答案 1 :(得分:1)
不,无论你做什么,你都需要至少一个线程。如果你有一个driver that uses NIO,你仍然会有一个额外的线程运行select()
。
我不确定你是如何在当前项目中实现它的,但即使使用执行程序(如建议的那样,SingleThreadExecutor
就足够了)它也不应该非常复杂。