/**
* 类描述:工作线程
* @author
* @version
*/
public abstract class WorkThread extends Thread {
/** 最大运行周期*/
protected static final long MAX_RUN_CYCLE = 50L;
/** 最小运行周期*/
protected static final long MIN_RUN_CYCLE = 20L;
/** 线程的名称*/
protected final String threadName;
/** 运行周期 */
protected long maxRunCycle;
/** 线程运行标志 */
protected boolean alive;
/**
* 工作线程初始化
* @param 线程名称
*/
public WorkThread(ThreadGroup group, String name)
{
super(group, name);
threadName = name;
setDaemon(true);
}
/**
* 工作线程运行
*/
public final void run() {
while (alive)
{
doTask();
try {
this.sleep(maxRunCycle);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
/***
* 关闭线程
*/
public void close() {
System.out.println("线程名称:" + threadName +" connection is "+ " closing...");
kill();
}
/**
* 任务工作
*/
public abstract void doTask();
/**
* 线程杀死
*/
public void kill() {
alive = false;
}
/**
* 判断是否活着
* @return alive
*/
public boolean getAlive() {
return alive;
}
/**
* 设定运行线程
* @param alive
*/
public void setAlive(boolean alive) {
this.alive = alive;
}
public long getMaxRunCycle() {
return maxRunCycle;
}
public void setMaxRunCycle(long maxRunCycle) {
this.maxRunCycle = maxRunCycle;
}
}
分享到:
相关推荐
Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java多线程学习Java...
java 线程工具类 java 线程工具类java 线程工具类 java 线程工具类java 线程工具类 java 线程工具类java 线程工具类 java 线程工具类java 线程工具类 java 线程工具类java 线程工具类 java 线程工具类java 线程工具...
如果你想使用Java,就必须学习线程。 本书的新版本展示了如何利用Java线程工具的全部优势,并介绍了JDK 2线程接口中的最新变化。你将学习如何使用线程来提高效率,如何有效地使用它们,以及如何避免常见的错误。...
在Java编程中,多线程是一种常见的并发处理方式,它能充分利用...通过学习和理解`MaxThreadCountTest`中的例子,开发者可以更好地掌握如何在实际项目中控制线程数量,优化程序性能,以及处理多线程环境下的并发问题。
《深入学习:Java多线程编程》是一本专注于Java并发技术的专业书籍,旨在帮助开发者深入理解和熟练运用Java中的多线程编程。Java多线程是Java编程中的核心部分,尤其在现代高性能应用和分布式系统中不可或缺。理解并...
线程的状态是理解其工作原理的关键。Java线程有五种基本状态:新建(New)、可运行(Runnable)、运行(Running)、阻塞(Blocked)和死亡(Terminated)。这些状态之间的转换是通过调用特定的方法,如start()、...
在Java编程语言中,线程是程序执行的基本单元,它允许程序并发地...同时,"Java线程学习和总结.files"目录下的文件可能是与文章相关的辅助资料,例如代码示例或图片。建议结合这些资料一起学习,以获得更全面的知识。
总的来说,Java多线程学习涵盖了线程的创建、同步、通信、调度以及异常处理等多个方面,深入理解和掌握这些知识点对于提升Java程序的性能和复杂性至关重要。通过阅读提供的"Java多线程.pdf"文档,你可以进一步了解和...
在Java编程环境中,了解JVM(Java虚拟机)中所有线程的活动状态对于调试多线程程序至关重要。本文将详细讲解如何查看JVM中的线程活动情况,并提供相关示例代码。 首先,Java提供了`java.lang.management....
- **目标读者**: 本教程主要面向具备丰富Java基础知识但缺乏多线程编程经验的学习者。 - **学习成果**: 学习者能够掌握编写简单的多线程程序的能力,并能够理解和分析使用线程的基本程序。 #### 二、线程基础知识 -...
java多线程PPT 多线程基本概念 创建线程的方式 线程的挂起与唤醒 多线程问题
本资源"JAVA线程学习(源代码)"提供了关于Java线程的源代码示例,帮助我们深入理解和实践线程的使用。 首先,我们要理解Java中的线程模型。Java线程由`java.lang.Thread`类或`java.util.concurrent.Executor`框架来...
线程通信是线程间交换信息的过程,主要用于协调不同线程的工作。Java中,可以通过wait()、notify()和notifyAll()这三个Object类的方法来实现线程间的通信。这些方法必须在同步环境中使用,否则会抛出异常。此外,...
### Java线程学习知识点 #### 一、Java线程概览 - **定义与作用**:线程是在程序中独立且并发执行的路径。在Java中,线程被设计为语言的一部分,而不是作为操作系统的底层工具。每个Java程序至少包含一个主线程,在...
这份"Java多线程编程核心技术学习资料"正是针对这一主题提供的一份宝贵的学习资源,适合初、中级Java开发人员提升自己的多线程编程技能。 在Java中,多线程主要通过以下方式实现: 1. 继承Thread类:创建一个新的...
但是,对于初学者来说,理解单线程阻塞模型是学习网络编程的基础,有助于深入理解Socket通信的工作原理。 此外,源码分析可以帮助我们更好地理解Socket通信的细节,例如异常处理、连接超时、资源管理等。通过阅读和...
java多线程每个线程挨着打印ABC的4种实现方式,有4个线程t1、t2、t3、t4,t1打印A后t2打印A再t3打印A再t4打印A,然后从新回到t1打印B再t2打印B...t4打印B... 4个线程轮流打印abc... 一个线程可以理解为一个人,打印...
Java线程编程是Java开发中的重要组成部分,尤其在构建高性能、高并发的应用程序时不可或缺。...通过学习本资料,开发者可以深入理解如何在Java中有效地利用多线程,编写出更加高效和可靠的并发程序。
在char01包里放置Java多线程基本知识的代码。内容如下: 如何使用多线程 如何得到多线程的一些信息 如何停止线程 如何暂停线程 线程的一些其他用法 在char02包里放置了Java对变量和对象并发访问的知识的代码...
### Java多线程学习资料知识点解析 #### 一、引言 Java作为一种广泛使用的编程语言,在并发编程领域具有独特的优势。多线程是Java中实现并发处理的核心技术之一,能够显著提升程序的性能和响应性。本文将深入探讨...