[ https://issues.apache.org/jira/browse/THRIFT-2028?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Ben Craig updated THRIFT-2028: ------------------------------ Attachment: thread_cleanup.patch Updated / rebased. > Cleanup threading headers / libraries > ------------------------------------- > > Key: THRIFT-2028 > URL: https://issues.apache.org/jira/browse/THRIFT-2028 > Project: Thrift > Issue Type: Improvement > Components: C++ - Library > Affects Versions: 0.9 > Reporter: Ben Craig > Assignee: Ben Craig > Fix For: 1.0 > > Attachments: thread_cleanup.patch > > > The current threading implementations have some minor annoyances: > All do some amount of internal state tracking with an enum that ends up being > overkill. > All use weak_ptrs to help manage lifetimes, instead of the > enable_shared_from_this base class that was designed for exactly this purpose. > All of the specific thread factories implement "detached" methods, but the > base thread factory doesn't have virtual methods exposing the detached > methods. > The thread manager has an unused local. > Adding a "UniqueGuard" class to Mutex.h, to give more flexible RAII > management to locks. Currently no clients of this, but I have some patches > that will eventually use this. -- This message was sent by Atlassian JIRA (v6.1#6144)