[Haskell-cafe] Faster timeout but is it correct?
Bas van Dijk
v.dijk.bas at gmail.com
Tue Feb 22 11:46:19 CET 2011
On 22 February 2011 03:10, Johan Tibell <johan.tibell at gmail.com> wrote:
> On Mon, Feb 21, 2011 at 3:16 PM, Bas van Dijk <v.dijk.bas at gmail.com> wrote:
>> On 21 February 2011 21:55, Johan Tibell <johan.tibell at gmail.com> wrote:
>>> ...include TimeoutKey in the TimeoutCallback type.
>> Done: http://hackage.haskell.org/trac/ghc/attachment/ticket/4963/faster_timeout.dpatch
> Could we store a full TimeoutCallback in the PSQ? At the line that reads
> sequence_ $ map Q.value expired
> you'll need to pass the PSQ key (which is the Unique) to the callback.
Good point. Something like this:
sequence_ $ map (\(Elem key _ cb) -> cb (TK key)) expired
> Most callbacks will ignore this key but by doing this we 1) decrease
> the size of the closure we store in the PSQ and 2) make the mechanism
> more flexible for future use.
Ok, I will apply it this evening.
More information about the Libraries