From: Eric Hodel Date: 2004-08-19T10:10:29+09:00 Subject: Re: WEBrick deadlock under Cygwin --dCSxeJc5W8HZXZrD Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Florian Gross (flgr@ccan.de) wrote: > Eric Hodel wrote: >=20 > >>>The right (wrong) sequence of locking can easily create a deadlock in > >>>the right circumstances. I can generate a deadlock easily in Borges d= ue > >>>to do an incorrect sequence of locks after an exception kills a thread. > >>>(The exception is only important because it allows the threads to > >>>deadlock.) > >>But isn't this considered a Ruby bug? > >No, this is definetly my bug. If a developer can't synchronize threads > >properly, how can Ruby determine the correct way? >=20 > I just think that a developer shouldn't be able to raise the fatal=20 > exception which leads to deadlocks. Maybe there should be better=20 > checking in Thread#stop? In a non-threaded app a developer has the ability to raise a fatal exception that leads to early termination. --=20 Eric Hodel - drbrain@segment7.net - http://segment7.net All messages signed with fingerprint: FEC2 57F1 D465 EB15 5D6E 7C11 332A 551C 796C 9F04 --dCSxeJc5W8HZXZrD Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.2 (FreeBSD) iD8DBQFBI/4CMypVHHlsnwQRAoVwAJ9IAFnO44TZHHneIO2SNWavI70azACfUEo4 cM58Z8U3+r7WTkGRycO0ZJc= =hTJ2 -----END PGP SIGNATURE----- --dCSxeJc5W8HZXZrD--