[ https://issues.apache.org/jira/browse/THRIFT-2441?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14388513#comment-14388513 ]
Ben Craig commented on THRIFT-2441: ----------------------------------- TServerSocket's pattern is basically what I had in mind for the client sockets. There are a number of ways that a control socket could be plumbed through, and the way you mention sounds reasonable. The tricky aspect is the performance degradation. It seems like there should be some option / choice made by the client as to whether they want prompt teardown, or whether they would prefer faster reads and writes. One way this could be approached is by having a different transport class handle one of the cases. It could also be handled by a different TServerSocket constructor. > Cannot shutdown TThreadedServer when clients are still connected > ---------------------------------------------------------------- > > Key: THRIFT-2441 > URL: https://issues.apache.org/jira/browse/THRIFT-2441 > Project: Thrift > Issue Type: Bug > Components: C++ - Library > Affects Versions: 0.9.1 > Reporter: Chris Stylianou > Assignee: Roger Meier > > When calling stop() on the TThreadedServer no interrupts are sent to the > client threads. This means the stop() call blocks on tasksMonitor.wait() > until all client naturally disconnect. > How can we tell the client thread connections to close/exit during the > TThreadedServer::stop() call? -- This message was sent by Atlassian JIRA (v6.3.4#6332)