From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.1.3 (2006-06-01) on yquem.inria.fr X-Spam-Level: X-Spam-Status: No, score=0.1 required=5.0 tests=AWL autolearn=disabled version=3.1.3 X-Original-To: caml-list@yquem.inria.fr Delivered-To: caml-list@yquem.inria.fr Received: from discorde.inria.fr (discorde.inria.fr [192.93.2.38]) by yquem.inria.fr (Postfix) with ESMTP id 707C9BC6B for ; Tue, 28 Aug 2007 17:33:21 +0200 (CEST) Received: from smtpout.mac.com (smtpout.mac.com [17.250.248.171]) by discorde.inria.fr (8.13.6/8.13.6) with ESMTP id l7SFXKSS029077 for ; Tue, 28 Aug 2007 17:33:20 +0200 Received: from mac.com (smtpin03-en2 [10.13.10.148]) by smtpout.mac.com (Xserve/smtpout01/MantshX 4.0) with ESMTP id l7SFXJSH001983 for ; Tue, 28 Aug 2007 08:33:20 -0700 (PDT) Received: from [192.168.8.101] (c-24-218-151-219.hsd1.ma.comcast.net [24.218.151.219]) (authenticated bits=0) by mac.com (Xserve/smtpin03/MantshX 4.0) with ESMTP id l7SFXIK4009111 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=NO) for ; Tue, 28 Aug 2007 08:33:19 -0700 (PDT) Mime-Version: 1.0 (Apple Message framework v752.2) In-Reply-To: <46D43B68.1000206@janestcapital.com> References: <9FA25C33-04DD-46BD-8959-873DDD2FFF82@epfl.ch> <1188055755.10796.37.camel@rosella.wigram> <1188257636.7533.23.camel@localhost.localdomain> <5EB9CEB2-3B79-4652-B6D1-10FEEC8E55E5@mac.com> <46D432CA.8010708@janestcapital.com> <46D4370C.1000305@fischerventure.com> <46D43B68.1000206@janestcapital.com> Content-Type: text/plain; charset=WINDOWS-1252; delsp=yes; format=flowed Message-Id: Content-Transfer-Encoding: quoted-printable From: Gordon Henriksen Subject: Re: [Caml-list] Has the thread cancellation problem evolved ? Date: Tue, 28 Aug 2007 11:32:42 -0400 To: caml-list@inria.fr X-Mailer: Apple Mail (2.752.2) X-Miltered: at discorde with ID 46D44040.001 by Joe's j-chkmail (http://j-chkmail . ensmp . fr)! X-Spam: no; 0.14; ocaml:01 28,:98 2007,:98 dated:98 signaling:98 signaling:98 doctor:98 doctor:98 wrote:01 wrote:01 rec:01 exception:01 exception:01 caml-list:01 handler:03 On Aug 28, 2007, at 11:12, Brian Hurt wrote: > Robert Fischer wrote: > >> Brian Hurt wrote: >> >>> So what happens if I throw an infinite loop into an exception =20 >>> handler? >> >> Now, my experience with .Net is somewhat dated, but I'm pretty =20 >> sure it re-hangs on your loop, and signaling another abort will =20 >> break out of your loop and continue up the chain of exception =20 >> handlers. At least once upon a time, there was a very large =20 >> business which I worked for that did a lot of concurrent .Net =20 >> work, and the standard solution was to keep signaling the abort =20 >> until the thing finally died. > > Until you get someone "clever", who does something like (in Ocaml): > > let rec do_my_work () =3D > try > do_a_bunch_of_work () > with > | Thread_abort_exception -> > (* Ack! Someone tried to kill me! I refuse to die! *) > do_my_work () > ;; =93Doctor, Doctor! It hurts when I go like this.=94 You know the rest. =97 Gordon