|
Scala example source code file (ShutdownHookThread.scala)
The ShutdownHookThread.scala Scala example source code/* __ *\ ** ________ ___ / / ___ Scala API ** ** / __/ __// _ | / / / _ | (c) 2003-2013, LAMP/EPFL ** ** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** ** /____/\___/_/ |_/____/_/ | | ** ** |/ ** \* */ package scala package sys /** A minimal Thread wrapper to enhance shutdown hooks. It knows * how to unregister itself. * * @author Paul Phillips * @version 2.9 * @since 2.9 */ class ShutdownHookThread private (name: String) extends Thread(name) { def remove() = runtime removeShutdownHook this } object ShutdownHookThread { private var hookNameCount: Int = 0 private def hookName(): String = synchronized { hookNameCount += 1 "shutdownHook" + hookNameCount } /** Creates, names, and registers a shutdown hook to run the * given code. */ def apply(body: => Unit): ShutdownHookThread = { val t = new ShutdownHookThread(hookName()) { override def run() = body } runtime addShutdownHook t t } } Other Scala source code examplesHere is a short list of links related to this Scala ShutdownHookThread.scala source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.