[Python-Dev] threads, SIGINT and time.sleep()

Mark Hammond mhammond@skippinet.com.au
Mon, 15 Jul 2002 23:03:23 +1000


[Michael]
> > While I understand that the docs make almost no guarantees WRT
> > threads and signals,
>
> Don't go there.

Didn't mean to <wink>

> Are you saying that your patch changes behaviour, or that behaviour
> changed somewhere between 1.5.2 and current CVS?  Or between 2.2 and
> current CVS?

My patch is for Windows only.  While examining my Linux builds to seek out
the most desirable behaviour, I stumbled across the difference between my
Linux 1.5.2 and CVS builds.  I have no other Linux builds to try, but if
someone has a few versions handy it would be interesting to know exactly
where it changes (or indeed if others can even repro this behaviour).

It appears that cygwin on Windows aborts the 2 threads without error - ie,
sleep() silently returns early.

> I'd expect the 1.5.2 semantics, but ...
>
> > Test code and results below.  All clues welcomed!
>
> Well, the behaviour is probably (pairwise) different on FreeBSD,
> Darwin and Solaris.

Yeah, I appreciate that there will always be platform differences - but I
still wouldn't mind knowing a "most desirable" behaviour should the platform
support it and anyone be bothered - if for no better reason than for me to
know what behaviour to check in for Windows!

Thanks,

Mark.