摘要:
Java有一种特殊线程叫守护(后台)线程。 1.这类线程拥有非常低的优先级且通常只是在没有其他线程运行的情况下执行。 2.其通常作为无线循环服务去执行某项任务。 3.不能让他们去执行重要任务因为你不知道他们什么时候获得CPU时间或者何时运行结束。 4.一个很典型的案例就是Java的垃圾收集器。 本例 阅读全文
摘要:
今天在eclipse中import一个maven项目,由于我手工中断了相关pom.xml中配置的jar包下载。 导致项目找不到一些jar包。具体错误见下图: 原因就是有些jar包下载没有完成导致的。 解决方法是找到maven本地仓库目录,搜索*.lastUpdated结尾的相关文件,全部删除后,ma 阅读全文
摘要:
一、首先下载maven插件并配置maven的环境变量,可参考:http://jingyan.baidu.com/article/cb5d61050b8ee7005d2fe04e.html 二、打开eclipse->windows-->preferences--Maven-->Installation 阅读全文
摘要:
有时我们需要等到某个线程执行完毕。例如,我可能有一个线程来初始化资源完毕然后其他线程才能开始执行。 谓词,我们可以使用Thread类的join()方法。 本例中,我们将学习使用这个方法。 DataSourcesLoader.java package com.dylan.thread.ch1.c06; 阅读全文
摘要:
有时候我们需要让线程在一段时间内不做任何事。例如某线程每个一小时检测一下传感器,剩余的时间不做任何事。 我们可以使用sleep()方法使线程睡眠,此期间不占用计算机资源。 这个方法接受一个整数表示睡眠的毫秒数。 睡眠结束后,JVM将从新分配其CPU时间。另一种睡眠方式是使用TimeUnit枚举元素的 阅读全文
摘要:
Linux 系统里面计划任务,crontab 没有如期执行这是运维工作中比较常见的一种故障了。 下面结合最近部署自动脚本不执行问题排查步骤: 1、检查 crontab 服务是否正常 [dmdba@test_db ~]$ ps -aux|grep cron 这里发现服务是正常运行。如果里面没有发现执行 阅读全文
摘要:
Java提供了InterruptedException异常,当我们检测到线程被打断时可以抛出并在run()方法中进行捕捉。 本例中,我们将开发一个程序以实现根据文件名称在指定文件夹(包括其子目录)中搜索它。 以此来介绍如何使用InterruptedException异常。 FileSearch.ja 阅读全文
摘要:
一般来讲一个java程序如果运行着多个线程,那么只有在这些线程都运行完毕后才会终止。 但有时候,我们需要去结束某个线程或者取消某个任务。此时就用到了Java线程的打断机制,即interruption。 本例中,我们将开发一个程序创建线程,5秒后将强制打断它。 PrimeGenerator.java 阅读全文
摘要:
常用线程属性 ID: 每个线程的唯一标识; Name: 线程名称; Priority: 线程优先级,从1-10,数字越大优先级越高;不推荐改变线程优先级; Status: 线程状态,包含6种状态:new, runnable, blocked, waiting, time waiting, termi 阅读全文
摘要:
从这一篇开始写Java并发编程实例,内容都翻译整理自书籍:《Java 7 Concurrency Cookbook》 谈到线程,无法逃避的一个问题就是: 并发(concurrency)和并行(parallellism)区别: 解释一:并发是指两个或多个事件在同一时间间隔发生;并行是指两个或者多个事件 阅读全文