Michael Mikhulya created TAP5-2335:
--------------------------------------

             Summary: Decrease number of operations with HashMap #2
                 Key: TAP5-2335
                 URL: https://issues.apache.org/jira/browse/TAP5-2335
             Project: Tapestry 5
          Issue Type: Improvement
            Reporter: Michael Mikhulya


During profiling of tapestry framework I found that HashMap is actively used in 
following code:

{code:title=NamedSet.java}
public void eachValue(Worker<T> worker)
    {
        F.flow(getValues()).each(worker);
    }
{code}

Here HashSet (which internally uses HashMap) is created inside getValues() only 
to iterate over it.
I changed code to use ArrayList instead of HashSet.

With following patch time per request decreased on 3.5 ms (7.4% of overall 
time). Measurements were done with apache benchmark on a real application after 
warm up phase.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Reply via email to