zoukankan      html  css  js  c++  java
  • java笔记守护线程的应用

    守护线程的应用

    Java中的线程可以分为两类,即用户线程和守护线程。
    用户线程是为了完成任务,而守护线程是为其他线程服务

    --如果朋友您想转载本文章请注明转载地址"http://www.cnblogs.com/XHJT/p/3894292.html "谢谢-- 

    守护线程的唯一用途是为其他线程提供服务。守护线程会随时中断,
    因此不要在守护线程上使用需要释放资源的资源,如输入输出流,数据库连接等
    所有的守护线程都是后台线程,如果虚拟机中只剩下守护线程,虚拟机就会退出

    Thread类与守护线程相关方法:

    isDaemon() : 测试一个线程是否为守护线程
    setDaemon(boolean on) : 讲一个线程标记为守护线程或用户线程

    代码实例:

    package com.xhj.thread;

    /**
    * 守护线程的应用
    *
    * @author XIEHEJUN
    *
    */
    public class ModifyDaemonThread implements Runnable {

    @Override
    public void run() {
    System.out.println("运行用户线程");
    for (int i = 0; i < 5; i++) {
    System.out.println("Thinking In Java 更新到版本" + i);
    }
    }

    /**
    * 利用内部类来建立守护线程
    *
    * @return
    */
    public Thread daemon() {
    class Timer implements Runnable {
    @Override
    public void run() {
    System.out.println("运行守护线程");
    long currentTime = System.currentTimeMillis();
    long processTime = 0;
    while (true) {
    if (System.currentTimeMillis() - currentTime > processTime) {
    processTime = System.currentTimeMillis() - currentTime;
    System.out.println("线程运行时间为: " + processTime);
    }
    }
    }
    }
    Thread daemonThread = new Thread(new Timer());
    return daemonThread;
    }

    public static void main(String[] args) {
    try {

    Thread userThread = new Thread(new ModifyDaemonThread());
    Thread daemonThread = new ModifyDaemonThread().daemon();
    // 在执行用户线程之前,一定要先设置守护线程
    daemonThread.setDaemon(true);
    userThread.start();
    daemonThread.start();
    } catch (Exception e) {
    System.out.println(e.getMessage());
    }
    }
    }

    知识重在总结和梳理,只有不断地去学习并运用,才能化为自己的东西。由于本人进阶猿类时间尚短,故此博客即是我学习,工作的笔记,也是和大家交流,相互提升技术的平台~希望大家不吝赐教~~ --但管努力,莫问前程,事在人为,功不唐捐。--和佑博客园
  • 相关阅读:
    用OFC画多条曲线
    C# 写Windows服务
    asp.net遍历文件夹和文件
    Sqlserver常用函数收集之truncate table
    如何构建多用户商城
    asp.net 获取客户端IP
    Jquery从头学起第四讲
    c#相对路径和系统路径
    JQuery获取URL
    【转】 ASP.NET session 保存到数据库
  • 原文地址:https://www.cnblogs.com/XHJT/p/3894292.html
Copyright © 2011-2022 走看看