0

我是线程新手,对 Java 的了解很少 ,我在 mysql 中插入数据时面临一些严重的性能问题。数据是巨大的块并且需要大量的时间,即使使用批处理、准备好的语句也是如此。

我想从哈希表中读取键和值,并使用线程划分要插入到 mysql 表中的特定 say-5 索引。我认为这会提高我的表现。假设有 100 个索引;所以我想创建 5 个线程,每个线程在数据库中插入 20 个值。我可以创建一个线程数组并将它们传递给执行程序池并提交,但是我被卡住了之后如何继续。

我有以下疑问:我如何跟踪线程插入了多少或如何限制线程插入 20 个?我可以进一步将每个线程的 20 个插入工作分成 4 个批次吗?

我不是在寻找代码,而是在寻找可能会有所帮助的正确指导。

4

1 回答 1

0

我个人会使用ExecutorAPI

基本上,我会创建一个固定的池执行器,只需将您想要执行的任务提交给它,并允许它在现有线程可用时管理任务池。

查看Executors 教程了解更多详情

于 2013-09-16T03:41:01.090 回答