データベースから 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
}
}
前もって感謝します。