実装では、次のコードを書きました。try-catch ブロックはメソッド内にあります
try{
InputVals iv = task.getInputVals();
Map<String, String> map = iv.getAllValues();
String a = map.get("value1");
String b = map.get("value2");
String x = funcxy.methodGetX();
String y = funcxy.methodGetY();
iv.setValue(xval, x);
iv.setValue(yval,y);
String []names = {"name1", "name2", "name3"}
for(int i = 0; i<names.length; i++ ){
iv.setValue("name"+i, names[i] );
}
}
同時リクエストを数回 (常にではありません) 行うと、「java.util.ConcurrentModificationException: ハッシュマップへの同時アクセス」エラーがスローされます。使ってみた
Map<String, String> map= new ConcurrentHashMap<String, String>();
map = iv.getAllValues();
しかし、これは問題を解決しませんでした。どこで間違いを犯しているのか教えてください。の実装を変更できません
InputVals iv = task.getInputVals();