Permalink
Browse files

Provide visibility into error message in spawned threads.

  • Loading branch information...
1 parent ec2a443 commit 05449c685d879a18f6c603ae95df2f5559fb3ec2 @mmcgrana committed Jul 6, 2010
Showing with 9 additions and 1 deletion.
  1. +9 −1 src/clj/fleetdb/util.clj
View
10 src/clj/fleetdb/util.clj
@@ -1,5 +1,6 @@
(ns fleetdb.util
(:require (clojure.contrib [def :as def]))
+ (:require (clj-stacktrace [repl :as stacktrace]))
(:import (fleetdb FleetDBException)))
(def/defalias def- def/defvar-)
@@ -79,4 +80,11 @@
(reduce (fn [int-m [k v]] (assoc int-m k (f k v))) {} m))
(defmacro spawn [& body]
- `(doto (Thread. (fn [] ~@body)) (.start)))
+ `(doto (Thread.
+ (fn []
+ (try
+ ~@body
+ (catch Exception e#
+ (stacktrace/pst-on System/err false e#)
+ (.println System/err)))))
+ (.start)))

0 comments on commit 05449c6

Please sign in to comment.