public class ThreadKnow
{
private TimeThread timeThread;
private boolean flag; public ThreadKnow()
{
/*************************创建线程************************/
//自定义线程构建方式一 继承Thread类
// public class MyThreadExam1 extends Thread
// { //自定义线程构建方式二:实现Runnable接口
// public class MyThreadExam2 implements Runnable
// { //对于需要在线程中执行的操作,可以重写父类的run()方法,并在方法中添加操作代码 /*************************线程中控制状态的使用************************/
/***一***/
//Thread.sleep()只能对当前运行的线程进行阻塞
//sleep在进入阻塞状态后只有到达时间毫秒后自动苏醒,任意方式打断处于sleep状态的线程都将引起异常
//sleep在进入阻塞状态后该线程所使用的到其他对象都将处于锁定的状态(sleep阻塞不会释放对象锁)
/***二***/
//当发生多个线程公用一个对象时,为防止该对象被随意使用,可以使用同步快对对象进行控制,为对象加上对象锁
//对象所只能对对象有作用:即对基本数据类型时没作用的
// synchronized (list)
// {
// //操作代码
// }
/***三***/
//加入线程队列中,等待线程执行完毕
// timeThread.join();
/***四***/
//强制终止该线程
timeThread.stop();
/***五***/
//挂起线程,但是会保留对象锁
timeThread.suspend();
/***六***/
//继续挂起的线程,和suspend搭配使用
timeThread.resume();
/***七***/
//将该线程加入到执行队列中,等待该线程的执行完毕
// timeThread.join();
/***八***/
//暂停当前正在执行的线程,并执行其他线程
timeThread.yield(); /***九***/
//线程等待:该方法是Object对象的方法,但是也可以控制线程,而且会释放对象锁
// new Object().wait();
/***十***/
//线程唤醒:同样是Object对象的方法,需要搭配使用wait()使用
new Object().notify(); //创建线程
timeThread = new TimeThread();
//开启线程
timeThread.start();
//判断线程的状态
if(timeThread.getState() == State.NEW)
{
}
else
{
}
//打断线程,并不能阻止线程的停止,修改线程的状态
timeThread.interrupt();
//暂停线程,将线程挂起
timeThread.suspend();
//继续线程,将使用suspend挂起的线程继续执行
timeThread.resume();
} public static void main(String[] args)
{ }
/**
* 显示时间的线程
* @author Administrator
*
*/
private class TimeThread extends Thread
{ @Override
public void run()
{
while(true)
{
if(flag)
{
String time = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss").format(new Date());
// lblTime.setText(time);
try
{
Thread.sleep(1000);
} catch (InterruptedException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
} }
} }
}

JAVA 线程学习 - Thread了解的更多相关文章

  1. java 线程学习

    转载:详见处http://lavasoft.blog.51cto.com/62575/27069   Java多线程编程总结   下面是Java线程系列博文的一个编目:   Java线程:概念与原理 ...

  2. java线程学习——汉堡销售问题

    汉堡店中有一个负责做汉堡的厨师,一个负责销售的营业员,用java线程表示他们的营业过程: 问题原型就是生产者与消费者的问题. 首先定义一个汉堡包箱子类与几个相关的变量类: public class H ...

  3. java线程学习(一)

    1.简介 java基础知识部分线程创建的三种方式.线程执行的样例. 代码地址:http://git.oschina.net/blue_phantom/javaj 包位置:package com.blu ...

  4. java线程学习之synchronized关键字

    关键字synchronized的作用是实现线程间的同步.它的任务是对同步的代码加锁.一个代码块同时只能有同一个线程进行读和写操作,从而保证线程间是安全的. 线程安全的概念是:当多个线程访问某一个类(对 ...

  5. 初识java线程(Thread)

    <1>.概念问题 线程的状态:1.NEW : 没有start的线程 2.RUNNING :可运行线程,可能正在执行,也可能正在等待操作系统中的其他资源,比如cpu时间片 3.BlOCKED ...

  6. Java线程学习详解

    线程基础 1. 线程的生命周期 1.1 新建状态: 使用 new 关键字和 Thread 类或其子类建立一个线程对象后,该线程对象就处于新建状态.它保持这个状态直到程序 start() 这个线程. 1 ...

  7. Java线程学习笔记(两) 线程异常处理

    线程捕获异常: 情况下,我们在main()方法里是捕捉不到线程的异常的,比例如以下面代码: public class ExceptionThread implements Runnable{ @Ove ...

  8. Java线程学习笔记(一个)

    一个.正在创建的线程: 老掉牙的话题了.继承 java.lang.Thread父类或者实现Runnalbe接口.这里就提一句: class Thread implements Runnable Thr ...

  9. 学习java线程学习笔记

    线程:代码执行的一个分支          主要作用是提高了效率,cpu能同时执行多个部分的代码.      线程的创建:两种方式      a.继承于thread类,重写run方法.      b. ...

随机推荐

  1. JAVA 语 言 如 何 进 行 异 常 处 理 , 关 键 字 : throws,throw,try,catch,final

    throws是获取异常throw是抛出异常try是将会发生异常的语句括起来,从而进行异常的处理,catch是如果有异常就会执行他里面的语句,而finally不论是否有异常都会进行执行的语句.

  2. ubuntu 下安装sublime

    终于还是要面临找工作了,太多需要linux下的操作经验和技巧的,被迫换了电脑的操作系统哦概念,一切环境都要重新配置,Window下的软件直接个软件包就可以搞定,ubuntu下一般的也都可以通过apt- ...

  3. USACO Section 4.3 Buy low,Buy lower(LIS)

    第一眼看到题目,感觉水水的,不就是最长下降子序列嘛!然后写……就呵呵了..要判重,还要高精度……判重我是在计算中加入各种判断.这道题比看上去麻烦一点,但其实还好吧.. #include<cstd ...

  4. linux杂记(?)命令别名——alias

    linux中的命令别名--alias linux中的命令别名--alias 1. 用命令alias可以查询系统中有哪些可用的命令别名 2.添加命令别名 回车查看, 别名建立成功 3.查询命令的地址ty ...

  5. 【原创】JPEG图像密写研究(二) 哈夫曼树的建立

    [原创]记录自己研究的过程,仅供参考,欢迎讨论... 在根据JPEG图像文件结构读取完文件后,提取出其中DHT段,利用其中内容建立哈夫曼树,便于之后译码工作.这里需要注意的是文件中的哈夫曼表数量不固定 ...

  6. Tensorflow的CNN教程解析

    之前的博客我们已经对RNN模型有了个粗略的了解.作为一个时序性模型,RNN的强大不需要我在这里重复了.今天,让我们来看看除了RNN外另一个特殊的,同时也是广为人知的强大的神经网络模型,即CNN模型.今 ...

  7. Maven 添加Jetty

        <build>         <finalName>springmvc</finalName>         <plugins>       ...

  8. JAVA訪问URL

    JAVA訪问URL: package Test; import java.io.BufferedReader; import java.io.IOException; import java.io.I ...

  9. js判断undefined类型,undefined,null,NaN的区别

    js判断undefined类型 今天使用showModalDialog打开页面,返回值时.当打开的页面点击关闭按钮或直接点浏览器上的关闭则返回值是undefined   所以自作聪明判断       ...

  10. 最近用的到的一些js的常用方法(简单的)

    由于新的项目开始了,是使用MVC 5.0 开发的,前端使用了两个主流的框架 UIKIT,Ignite UI(收费) 因为是mvc主要用json来交互,不能避免要对前端脚本进行操作,所以就将能用到的方法 ...