[ 
https://issues.apache.org/jira/browse/THRIFT-2028?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14935913#comment-14935913
 ] 

James E. King, III commented on THRIFT-2028:
--------------------------------------------

Another suggestion would be to eliminate the project-specific abstraction and 
require either boost or C++11, assuming either of them have all the primitives. 
 This would simplify the code base quite a bit and remove the need to maintain 
this abstraction layer.

> 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.3.4#6332)

Reply via email to