[slime-devel] Today's Daily ChangeLog diff
nikodemus at random-state.net
Fri May 11 06:06:53 UTC 2012
On 10 May 2012 10:45, Helmut Eller <heller at common-lisp.net> wrote:
> It seems to me that WITH-DEADLINE must be used whenever we wait for
> something and don't know for certain that we aren't inside another
> WITH-DEADLINE. I.e. "in general" WITH-DEADLINE must be used and only in
> the special case when we know that no caller used WITH-DEADLINE can it
I don't see how this follows. Local :TIMEOUT and a global deadline are
two different things.
I consider cases where :OVERRIDE is used to be red flags that
something is wrong. Either there's a deadline that is unrealistic, or
you're blocking way too long. The only places I've used :OVERRIDE so
far myself for real is in SB-EXT:EXIT, for which a DEADLINE-TIMEOUT
would be quite inappropriate, IMO.
In case of Slime, the deadline of 0.1 seconds installed by the :AROUND
method is probably unrealistic considering what it is for, and the
occasional sluggishness of the system and the purpose of the deadline.
1 second would do just as well.
I /don't/ dispute the hacky nature of WITH-DEADLINE for a second,
though. It's whole purpose is intercession into parts of a program not
written with timeouts in mind -- third party libraries, etc.
More information about the slime-devel