【Java开源代码栏目提醒】:网学会员为需要Java开源代码的朋友们搜集整理了TextThreadStartOrStop.java相关资料,希望对各位网友有所帮助!
package com.zf.s14; //创建一个包
import java.util.Date; //引入类
class OneThread extends Thread { // 继承java.lang.Thread类定义线程
private boolean running = false; // 标记线程是否需要运行
public void start() { // 覆盖了父类的start方法,
this.running = true; //将running置为ture,表示线程需要运行
super.start();
}
public void run() {
int i = 0;
try {
while (running) { //如果running为真,说明线程还可以继续运行
System.out.println("线程 " + i++);
Thread.sleep(200); // sleep方法将当前线程休眠。
}
} catch (Exception e) { //捕获异常
}
System.out.println("线程结束...");
}
public void setRunning(boolean running) { //设置线程
this.running = running;
}
public void startThreadA(){ //启动ThreadA线程
System.out.println("启动线程...");
this.start();
}
public void stopThreadA(){ //停止ThreadA线程
System.out.println("结束线程...");
this.setRunning(false);
}
}
class TwoThread implements Runnable { // 实现java.lang.Runnable接口定义线程
private Date runDate; // 线程被运行的时刻
public void run() {
System.out.println("线程启动方法...");
this.runDate = new Date();
System.out.println("启动时间:"+runDate);
}
}
public class TextThreadStartOrStop { //操作线程启动和停止的类
public void startOne() {
OneThread threadOne=new OneThread();//创建实例
threadOne.startThreadA(); //启动ThreadA线程
try {
Thread.sleep(1000); // 当前线程休眠一秒钟
} catch (InterruptedException e) {
e.printStackTrace();
}
threadOne.stopThreadA(); // 停止ThreadA线程
}
public void startTwo() { //开始第二个
Runnable tb = new TwoThread(); // 创建实例
Thread threadB = new Thread(tb); // 将实例放入线程中
threadB.start(); // start方法启动线程
}
public static void main(String[] args) { // java程序主入口处
TextThreadStartOrStop test = new TextThreadStartOrStop(); //实例化对象
test.startOne(); //调用方法
test.startTwo();
}
}
上一篇:
TextThreadsAndPointAdd.java
下一篇:
:现在要收费的搜猫9.0正式版现在免费分享给大家