[
https://issues.apache.org/jira/browse/THRIFT-2218?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13824768#comment-13824768
]
Andrew Gaul commented on THRIFT-2218:
-------------------------------------
What advantages does storing TSerializer in TLS give users? This seems to
complicate reasoning about the object lifetime for some minor initialization
advantage. If the thread-safety confuses users perhaps we can just add a
@NotThreadSafe annotation?
> Make java TSerializer and TDeserializer thread safe
> ---------------------------------------------------
>
> Key: THRIFT-2218
> URL: https://issues.apache.org/jira/browse/THRIFT-2218
> Project: Thrift
> Issue Type: Improvement
> Components: Java - Library
> Reporter: Alex Levenson
> Assignee: Jake Farrell
> Attachments: TSerDe-thread-safe.diff
>
>
> They currently are not thread safe, though it seems that many people assume
> incorrectly that they are.
> This patch puts the shared mutable state used by TSerializer / TDeserializer
> in a ThreadLocal object so that it is safe to share instances of TSerializer
> / TDeserializer across threads.
> I've attached the patch, and you can view it in github here as well:
> https://github.com/isnotinvain/thrift/compare/TSerDe-thread-safe
--
This message was sent by Atlassian JIRA
(v6.1#6144)