【发布时间】:2023-04-03 14:35:01
【问题描述】:
我从数据库中检索了 50000 个数据并将它们存储到 arraylist。我将arraylist分成两半,说250000存储在ArrayList1(偶数行)和其他25000 ArrayList2(奇数行)中。
现在,我需要使用多线程来处理这些,以便一次处理所有 50,000 条记录。主要目的是加快交易速度。
问题是userList 变得太重并且需要时间。
如何实现 ExecutorService 来加速?
希望尽快收到您的建议。
List<String[]> userList = new ArrayList<String[]>();
void getRecords()
{
String [] props=null;
while (rs.next()) {
props = new String[2];
props[0] = rs.getString("useremail");
props[1] = rs.getString("active");
userList.add(props);
if (userList.size()>0) sendEmail();
}
}
void sendEmail()
{
String [] user=null;
for (int k=0; k<userList.size(); k++)
{
user = userList.get(k);
userEmail = user[0];
//send email code
}
}
提前致谢。
【问题讨论】:
-
我假设您的意思是 25000 和 25000 各。 ;)
标签: java multithreading arraylist