[
https://issues.apache.org/jira/browse/FELIX-2804?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12987413#action_12987413
]
Valentin Valchev commented on FELIX-2804:
-----------------------------------------
Just a small improvement without many changes to the code would be if make
place the 'for' in synchronized block:
[code]
StringBuffer sb = new StringBuffer();
int expecting = (CHAR | DELIMITER | STARTQUOTE);
synchronized(sb)
{
for (int i = 0; i < value.length(); i++)
{
.......................
}
}
[code]
This makes the performance of StringBuffer almost identical to StringBuilder.
> [Framework] Try to improve performance of parseDelimitedString() in manifest
> parser
> -----------------------------------------------------------------------------------
>
> Key: FELIX-2804
> URL: https://issues.apache.org/jira/browse/FELIX-2804
> Project: Felix
> Issue Type: Improvement
> Components: Framework
> Affects Versions: framework-3.0.7
> Reporter: Richard S. Hall
> Priority: Minor
> Fix For: framework-3.2.0
>
>
> Currently, we are using StringBuffer and appending one character at a time
> while parsing a delimited string. As we discovered when implementing our
> custom manifest parser, such an approach is not really very efficient. It is
> better to keep track of beginning/ending indexes and just extracting strings
> as needed. We should probably do something similar here. It may not offer
> great improvement, but this routine is used to parse pretty long
> import/export headers, so you never know.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.