Github user jeking3 commented on the issue:

    https://github.com/apache/thrift/pull/1103
  
    What you described is a failing in the original set of thread factories to 
provide common functionality (detached, policy, priority) in the base class.  
Only PosixThreadFactory has policy and priority, and yet it's quite likely that 
all of them would benefit from these.  I moved the detached information into 
the base class as a first step.  I could certainly add back setDetached into 
the base and mark it deprecated, however that breaks the contract that the 
servers require - that the detached disposition cannot change while the server 
is running, so it really doesn't belong... I still have no valid use case for 
changing detached disposition of a thread manager while it is in use.
    
    Now that said, I believe that Thread knows if it is detached or not; if 
Thread had a "joinIfJoinable()" method then that server requirement would go 
away since the TConnectedClient could just call that and it would do the right 
thing, and setDetached() could be added back in avoiding that particular 
breaking change.
    
    I don't find breaking changes to be a problem when they remove behavior 
that has no use case to support it, however.  There's a lot of technical debt 
in the concurrency area that still could be addressed - this was a first pass 
as trying to shore it up and ensure functions provided are actually tested and 
work, and that tests don't take 100 seconds each.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to