jakarta-oro-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From d..@apache.org
Subject cvs commit: jakarta-oro/src/java/org/apache/oro/text/regex Perl5Compiler.java Perl5Matcher.java
Date Fri, 03 Jan 2003 17:18:08 GMT
dfs         2003/01/03 09:18:08

  Modified:    .        TODO
               src/java/org/apache/oro/text/perl Perl5Util.java
               src/java/org/apache/oro/text/regex Perl5Compiler.java
                        Perl5Matcher.java
  Log:
  Updated javadocs to disambiguate proper use of classes in concurrent
  programs.  Made note in TODO list that we need to write a new user's guide
  and FAQ.
  
  PR: 15777
  
  Revision  Changes    Path
  1.13      +11 -3     jakarta-oro/TODO
  
  Index: TODO
  ===================================================================
  RCS file: /home/cvs/jakarta-oro/TODO,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- TODO	15 Mar 2002 03:06:20 -0000	1.12
  +++ TODO	3 Jan 2003 17:18:07 -0000	1.13
  @@ -9,10 +9,10 @@
   
   o Optimize/improve Unicode character classes.
   
  -o Fix any pending bugs listed in BUGS file.
  +o Fix any pending bugs listed in BUGS file or problem tracking system.
   
   o Update org.apache.oro.text.regex and org.apache.oro.text.perl syntax to 
  -  latest version of Perl, currently version 5.6.  This will require
  +  latest version of Perl, currently version 5.8.  This will require
     a lot of work.
   
   o Pattern cache implementations are probably not very efficient.
  @@ -51,3 +51,11 @@
   o Make separate src and bin distributions.  Current distribution is
     getting big on account of 1.2 MB of API docs.  src only distribution
     should be half the size of bin distribution for quicker download.
  +
  +o Write user's guide and FAQ.
  +
  +o Update javadocs to take advantage of more recent features for
  +  using the same documentation in multiple places without
  +  writing it multiple times.  Also get rid of all JDK 1.4 javadoc
  +  warnings.
  +
  
  
  
  1.15      +11 -1     jakarta-oro/src/java/org/apache/oro/text/perl/Perl5Util.java
  
  Index: Perl5Util.java
  ===================================================================
  RCS file: /home/cvs/jakarta-oro/src/java/org/apache/oro/text/perl/Perl5Util.java,v
  retrieving revision 1.14
  retrieving revision 1.15
  diff -u -r1.14 -r1.15
  --- Perl5Util.java	14 Nov 2002 00:37:08 -0000	1.14
  +++ Perl5Util.java	3 Jan 2003 17:18:07 -0000	1.15
  @@ -151,6 +151,16 @@
    * the last {@link org.apache.oro.text.regex.MatchResult MatchResult}
    * found (which can be accessed with {@link #getMatch()} by a match or
    * substitution (or even a split, but this isn't particularly useful).
  + * At the moment, the
  + * {@link org.apache.oro.text.regex.MatchResult MatchResult} returned
  + * by {@link #getMatch()} is not stored in a thread-local variable.  Therefore
  + * concurrent calls to {@link #getMatch()} will produce unpredictable
  + * results.  So if your concurrent program requires the match results,
  + * you must protect the matching and the result retrieval in a critical
  + * section.  If you do not need match results, you don't need to do anything
  + * special.  If you feel the J2SE implementation of {@link #getMatch()}
  + * should use a thread-local variable and obviate the need for a critical
  + * section, please express your views on the oro-dev mailing list.
    *
    * @author <a href="mailto:oro-dev@jakarta.apache.org">Daniel F. Savarese</a>
    * @version @version@
  
  
  
  1.18      +11 -1     jakarta-oro/src/java/org/apache/oro/text/regex/Perl5Compiler.java
  
  Index: Perl5Compiler.java
  ===================================================================
  RCS file: /home/cvs/jakarta-oro/src/java/org/apache/oro/text/regex/Perl5Compiler.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- Perl5Compiler.java	20 Nov 2002 22:51:29 -0000	1.17
  +++ Perl5Compiler.java	3 Jan 2003 17:18:07 -0000	1.18
  @@ -68,6 +68,16 @@
    * Perl5Pattern instances upon compilation to be used in conjunction
    * with a Perl5Matcher instance.  Please see the user's guide for more 
    * information about Perl5 regular expressions.
  + * <p>
  + * Perl5Compiler and Perl5Matcher are designed with the intent that
  + * you use a separate instance of each per thread to avoid the overhead
  + * of both synchronization and concurrent access (e.g., a match that takes
  + * a long time in one thread will block the progress of another thread with
  + * a shorter match).  If you want to use a single instance of each
  + * in a concurrent program, you must appropriately protect access to
  + * the instances with critical sections.  If you want to share Perl5Pattern
  + * instances between concurrently executing instances of Perl5Matcher, you
  + * must compile the patterns with {@link Perl5Compiler#READ_ONLY_MASK}.
    *
    * @author <a href="mailto:oro-dev@jakarta.apache.org">Daniel F. Savarese</a>
    * @version @version@
  
  
  
  1.22      +11 -1     jakarta-oro/src/java/org/apache/oro/text/regex/Perl5Matcher.java
  
  Index: Perl5Matcher.java
  ===================================================================
  RCS file: /home/cvs/jakarta-oro/src/java/org/apache/oro/text/regex/Perl5Matcher.java,v
  retrieving revision 1.21
  retrieving revision 1.22
  diff -u -r1.21 -r1.22
  --- Perl5Matcher.java	20 Nov 2002 23:17:38 -0000	1.21
  +++ Perl5Matcher.java	3 Jan 2003 17:18:08 -0000	1.22
  @@ -67,6 +67,16 @@
    * The Perl5Matcher class is used to match regular expressions
    * (conforming to the Perl5 regular expression syntax) generated by
    * Perl5Compiler.
  + * <p>
  + * Perl5Compiler and Perl5Matcher are designed with the intent that
  + * you use a separate instance of each per thread to avoid the overhead
  + * of both synchronization and concurrent access (e.g., a match that takes
  + * a long time in one thread will block the progress of another thread with
  + * a shorter match).  If you want to use a single instance of each
  + * in a concurrent program, you must appropriately protect access to
  + * the instances with critical sections.  If you want to share Perl5Pattern
  + * instances between concurrently executing instances of Perl5Matcher, you
  + * must compile the patterns with {@link Perl5Compiler#READ_ONLY_MASK}.
    *
    * @author <a href="mailto:oro-dev@jakarta.apache.org">Daniel F. Savarese</a>
    * @version @version@
  
  
  

--
To unsubscribe, e-mail:   <mailto:oro-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:oro-dev-help@jakarta.apache.org>


Mime
View raw message