From mboxrd@z Thu Jan 1 00:00:00 1970 Received: (from majordomo@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id WAA20114; Sat, 30 Nov 2002 22:21:22 +0100 (MET) X-Authentication-Warning: pauillac.inria.fr: majordomo set sender to owner-caml-list@pauillac.inria.fr using -f Received: (from weis@localhost) by pauillac.inria.fr (8.7.6/8.7.3) id WAA28436 for caml-list@pauillac.inria.fr; Sat, 30 Nov 2002 22:21:22 +0100 (MET) Received: from concorde.inria.fr (concorde.inria.fr [192.93.2.39]) by pauillac.inria.fr (8.7.6/8.7.3) with ESMTP id TAA26141 for ; Sat, 30 Nov 2002 19:32:34 +0100 (MET) Received: from Xenon.Stanford.EDU (Xenon.Stanford.EDU [171.64.66.201]) by concorde.inria.fr (8.11.1/8.11.1) with ESMTP id gAUIWXX05718 for ; Sat, 30 Nov 2002 19:32:33 +0100 (MET) Received: from acc by Xenon.Stanford.EDU with local (Exim 4.10) id 18ICPn-0002Et-00 for caml-list@inria.fr; Sat, 30 Nov 2002 10:32:31 -0800 Date: Sat, 30 Nov 2002 10:32:31 -0800 From: Andy Chou To: caml-list@inria.fr Subject: [Caml-list] signals and exceptions Message-ID: <20021130183231.GA20600@Xenon.stanford.edu> Reply-To: acc@CS.Stanford.EDU Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4i Sender: owner-caml-list@pauillac.inria.fr Precedence: bulk Can I safely throw an exception inside a signal handler, for the purposes of timeout? For example: exception Timeout Sys.set_signal Sys.sigalrm (Sys.Signal_handle (fun _ -> raise Timeout)); (try ignore(Unix.alarm 5); work(); if Unix.alarm 0 == 0 then Unix.pause() with Timeout -> printf "TIMEOUT\n"); Sys.set_signal Sys.sigalrm Sys.Signal_ignore; Will there be an GC problems, etc? I've noticed that a program that uses this idiom non-deterministically seg faults. -Andy ------------------- To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/ Beginner's list: http://groups.yahoo.com/group/ocaml_beginners