In the user manual I read:
=97 Function: sb-ext:make-timer function &key name thread
Create a timer object that's when scheduled runs function. If
thread is a thread then that thread is to be interrupted with
function. If thread is t then a new thread is created each timer
function is run. If thread is nil then function can be run in any
I don't think that's a good idea to have the default value of 'thread'
to be nil.
if the function needs some locks. there'll be possible dead lock if
one of the _any thread_ happens to hold one of those locks. So I think
it would be better for the default value of 'thread' in thread-enabled
SBCL to be T.