private void createWorkList(LinkedList<Object> changedUnits, HashSet<Object> changedUnitsSet) { createWorkList(changedUnits, changedUnitsSet, g.getMainPegChain()); Set maps = g.getStartToThread().entrySet(); for (Iterator iter = maps.iterator(); iter.hasNext(); ) { Map.Entry entry = (Map.Entry) iter.next(); List runMethodChainList = (List) entry.getValue(); Iterator it = runMethodChainList.iterator(); while (it.hasNext()) { PegChain chain = (PegChain) it.next(); createWorkList(changedUnits, changedUnitsSet, chain); } } }
protected void buildMaps(PegGraph pg) { exceHandlers.addAll(pg.getExceHandlers()); startToThread.putAll(pg.getStartToThread()); startToAllocNodes.putAll(pg.getStartToAllocNodes()); startToBeginNodes.putAll(pg.getStartToBeginNodes()); waitingNodes.putAll(pg.getWaitingNodes()); notifyAll.putAll(pg.getNotifyAll()); canNotBeCompacted.addAll(pg.getCanNotBeCompacted()); synch.addAll(pg.getSynch()); threadNameToStart.putAll(pg.getThreadNameToStart()); specialJoin.addAll(pg.getSpecialJoin()); joinStmtToThread.putAll(pg.getJoinStmtToThread()); threadAllocSites.addAll(pg.getThreadAllocSites()); allocNodeToThread.putAll(pg.getAllocNodeToThread()); }