Oh, I read the implementation of pthread_self() in glibc just now,  It's
simple then I guessed,

It seems an overkill optimization. I think we should drop this wrapper.


On Fri, May 24, 2013 at 2:14 PM, Yunkai Zhang <yunkai...@gmail.com> wrote:

>
>
>
> On Fri, May 24, 2013 at 1:41 AM, James Peach <jpe...@apache.org> wrote:
>
>> Hi Yunkai,
>>
>> I'm looking at the reclaimable freelist code, and this jumped out at me:
>>
>>         static inline pthread_t thread_id(void)
>>         {
>>           static __thread pthread_t tid;
>>
>>           return tid?tid:(tid = pthread_self());
>>         }
>>
>> Why does this need to cache the thread ID in thread local storage?
>>
>
> Getting thread id is a very frequent operation in reclaimabe-freelist, but
> pthread_selft() isn't a inline function, I wanted to cache it so that we
> can reduce one function calling.
>
>
>
>>
>> J
>>
>
>
>
> --
> Yunkai Zhang
> Work at Taobao
>



-- 
Yunkai Zhang
Work at Taobao

Reply via email to