为什么我在groovy代码中得到java.util.ConcurrentModificationException?

时间:2012-01-17 00:15:53

标签: hibernate grails groovy

我正在为

下面的实现获取java.util.concurrentmodificationexception
try{
         Date fromDate = new Date().parse("yyyy-MM-dd", SfromDate);
         Date toDate = new Date().parse("yyyy-MM-dd", StoDate); 
         def sTblList = this.getMonths(SfromDate,StoDate)
        def resourceInstance=Resources.get(res_id);
        sTblList.each{
         def OnemonthList=it.createCriteria().get {   
            eq('graresource',resourceInstance)
            between('currentdate', fromDate, toDate)           
            projections {  
            sum(sumCol,'t_cnt')
            groupProperty(groupCol)
            order('t_cnt', 'desc')
            maxResults(maxCount)
                }                  
            }      
            if (OnemonthList)
            sumMap.addAll(OnemonthList)
          }

            return sumMap
    }
       catch(Exception e){
           log.error("Error in SummaryUtilsService:getTop10UsersChart:" + e)
       }

是因为我尝试对聚合属性进行分组,这种语法有问题吗?

1 个答案:

答案 0 :(得分:1)

您的 sTblList 正在其他地方进行修改。如果引用在不同线程之间共享,则会发生这种情况尝试同步块。