[ 
https://issues.apache.org/jira/browse/SANDBOX-408?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13224859#comment-13224859
 ] 

Sebb commented on SANDBOX-408:
------------------------------

I thought you wanted to be able to pass CSVFormat objects between threads?

As it stands, the implementation is not completely thread-safe.
And the Javadoc comment is still misleading.
                
> CSVFormat describes itself as immutable, but it is not - in particular it is 
> not thread-safe
> --------------------------------------------------------------------------------------------
>
>                 Key: SANDBOX-408
>                 URL: https://issues.apache.org/jira/browse/SANDBOX-408
>             Project: Commons Sandbox
>          Issue Type: Bug
>          Components: CSV
>            Reporter: Sebb
>         Attachments: CSVFormat.java
>
>
> CSVFormat describes itself as immutable, but it is not @Immutable - the class 
> fields are all mutable.
> The methods that change the fields do so by creating a clone, and returning 
> the changed clone.
> So in a sense the class is immutable.
> However, the normal expectation is that @Immutable classes are @ThreadSafe.
> CSVFormat is not thread-safe, because the fields are not volatile, and the 
> fields are not written & read using a common lock.
> The comment needs to be clarified or removed.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to