On 05/03/2013 04:49 PM, Manik Surtani wrote:
>
> On 2 May 2013, at 19:01, Pedro Ruivo <[email protected]> wrote:
>
>>
>> preciseTime() {return (cached = System.nanoTime());}
>> impreciseTime() {return cached;}
>
> How would you invalidate the cached time?

My idea is to have a schedule thread updating the cached time. the 
preciseTime() is just an optimization to keep the cached value more 
up-to-date since we are calculating the nanoTime() (and assuming that 
nanoTime() is more expensive than write in the volatile variable).

>
>> Also, I think a method like boolean isExpired(long timestamp) is useful
>>>> to add to the interface.
>>>>
>>>>>
>>>>>>
>>>>>> * Scope:
>>>>>>
>>>>>> Should the TimeService be in a cache or global scope? My vote is per
>>>>>> cache…
>>>>>
>>>>> ^ My feeling is that it should be global. Why per cache?
>>>>
>>>> When recovery is enabled, the recovery manager creates a second cache.
>>>> Someone may want to replace the Clock/TimeService for the "normal" cache
>>>> and left the default implementation in the "recovery" cache.
>>>
>>> ^ Why would an end-user want to replace the Clock/TimeService?
>>>
>>> Remember what I said in my previous email: I can see someone changing the 
>>> service implementation for testing reasons, and in that case, a global 
>>> clock/timer service that's swapable via system property would work just 
>>> fine IMO.
>>
>> I don't know. I'm being pessimist and assuming that someone in the world
>> as a dark use case and needs to replace the service.
>>
>> Looking at the code, it is easiest for me to use a global service :)
>
> +1 to a global service.
>
>
> --
> Manik Surtani
> [email protected]
> twitter.com/maniksurtani
>
> Platform Architect, JBoss Data Grid
> http://red.ht/data-grid
>
>
> _______________________________________________
> infinispan-dev mailing list
> [email protected]
> https://lists.jboss.org/mailman/listinfo/infinispan-dev
>
_______________________________________________
infinispan-dev mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/infinispan-dev

Reply via email to