Gilles created MATH-1341:
----------------------------

             Summary: "RandomDataGenerator" is brittle
                 Key: MATH-1341
                 URL: https://issues.apache.org/jira/browse/MATH-1341
             Project: Commons Math
          Issue Type: Bug
            Reporter: Gilles
            Priority: Minor
             Fix For: 4.0


Class {{RandomDataGenerator}} can easily be misused as it advertizes a method 
to access its internal RNG (which is _not_ thread-safe).

The class is also a mixed bag of "data generators" that are either "secure" or 
not.
Moreover it uses the "lazy initialization" pattern (for the RNG instance) 
solely because of this duality; otherwise users that need one or the other form 
of data generation will obviously always use the RNG since all data generation 
methods need it.
This entails also a performance hit (albeit tiny) as each call checks whether 
the RNG has been initialized already.
The clean solution would be to separate the two types of data generation 
(secure vs not) into different classes.




--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to