[ 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)