首页 > 解决方案 > 在 ParallelStream 中配置线程

问题描述

标签: javamultithreadingparallel-processingjava-streamjava-threads

解决方案


我认为你不应该为此强制并行流。如果您以块的形式进行批量插入,您将获得最佳性能。尽管如此,如果你仍然想这样做,你应该有一个连接池,这样每个线程都会获得一个连接并在完成工作后释放它。您的 add 方法将如下所示:

private void add(String name){
    Connection con=genCoonection(); //just take a connection from pool
    con.insert(name);
    con.commit;//commit after each record
}

您可以在此处找到有关如何创建和使用连接池的多个示例: 如何在 JDBC 中建立连接池?

另一种选择是提供此处ThreadLocal描述的自定义,每个线程将在线程本地打开连接。然后关闭线程池,连接将按照此处所述关闭


推荐阅读