Issue Type: Improvement Improvement
Affects Versions: 1.4.4
Assignee: Jörg Schaible
Components: Annotations
Created: 26/Feb/13 2:41 PM
Description:

AnnotationMapper.processAnnotations is really hot performance-wise in multi-threaded applications (see https://issues.jenkins-ci.org/browse/JENKINS-13154 for more details.)

This is because every time anything happens, the processAnnotations method is called and it needs to obtain a lock on annotatedTypes. Simply making the annotatedTypes field concurrency-safe doesn't work, because the processTypes methods adds a class to annotatedTypes before it processes its fields.

In this patch, we introduce another field that keeps track of classes that were already analyzed. This class is concurrency-safe, resulting in a substantial boost in multi-threaded applications.

Project: XStream
Priority: Major Major
Reporter: Kohsuke Kawaguchi
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

To unsubscribe from this list please visit:

http://xircles.codehaus.org/manage_email

Reply via email to