You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Ben Craig (JIRA)" <ji...@apache.org> on 2013/10/15 03:54:42 UTC

[jira] [Updated] (THRIFT-2028) Cleanup threading headers / libraries

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