Java学习笔记-Thread-线程

时间:2022-12-12 17:17:13

//2015年5月5日16:55:00

//Main

package com.alfredsun.thread;

public class Main {

	public static void main(String[] args) {
// TODO Auto-generated method stub
MyThread t1=new MyThread("A");
MyThread t2=new MyThread("B");
// t1.run();
// t2.run();
//线程的启动由start()
t1.start();
t2.start();
} }

  //MyThread

package com.alfredsun.thread;

public class MyThread extends Thread
{
private String name;
public MyThread(String name)
{
this.name =name;
}
public void run()
{
for(int i=0;i<10;i++)
{
System.out.println(name+":"+i);
}
super.run();
}
}

//并发结果

A:0
B:0
A:1
B:1
A:2
B:2
A:3
B:3
A:4
B:4
A:5
B:5
B:6
A:6
B:7
A:7
B:8
B:9
A:8
A:9

//Runnable接口

//2015年5月5日17:04:03

//main
package com.alfredsun.thread; public class Main { public static void main(String[] args) {
// TODO Auto-generated method stub
MyRunable r1= new MyRunable("A");
MyRunable r2=new MyRunable("B");
Thread t1=new Thread(r1);
Thread t2=new Thread(r2);
t1.start();
t2.start();
} }
//Myrunnable
package com.alfredsun.thread; public class MyRunable implements Runnable
{
private String name;
public MyRunable(String name)
{
this.name=name;
}
public void run()
{
for(int i=0;i<1000;i++)
{
System.out.println(name+":"+i);
}
}
}

//线程的操作

//2015年5月5日17:31:47

 package com.alfredsun.thread;
class RunnableDemo implements Runnable
{
private String name;
public RunnableDemo(String name) {
this.name =name;
}
public void run()
{
for(int i=0;i<50;i++)
{
System.out.println(Thread.currentThread().getName());
}
}
}
public class test {
public static void main(String[] args)
{
RunnableDemo r1= new RunnableDemo("A");
RunnableDemo r2= new RunnableDemo("B");
Thread t1 =new Thread(r1);
Thread t2 =new Thread(r2); t1.start();
t2.start();
}
}

Java学习笔记-Thread-线程的更多相关文章

  1. java学习笔记15--多线程编程基础2

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note15.html,转载请注明源地址. 线程的生命周期 1.线程的生命周期 线程从产生到消亡 ...

  2. java学习笔记14--多线程编程基础1

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note14.html,转载请注明源地址. 多线程编程基础 多进程 一个独立程序的每一次运行称为 ...

  3. java学习笔记-Thread

    java定义了创建线程的两种方法 1.实现Runnable接口 2.扩展Thread类本身 1.实现Runnable接口: 可以依托任何Runnable接口的对象来创建线程.但是为了实现Runnabl ...

  4. JAVA学习笔记16——线程的创建和启动

    Java使用Thread类代表线程,所有的线程对象都必须是Thread类或其子类的实例.每个线程的作用是完成一定的任务,实际上就是执行一段程序流(一段顺序执行的代码).Java使用线程执行体来代表这段 ...

  5. java学习笔记之线程(Thread)

    刚开始接触java多线程的时候,我觉得,应该像其他章节的内容一样,了解了生命周期.构造方法.方法.属性.使用的条件,就可以结束了,然而随着我的深入学习了解,我发现java的多线程是java的一个特别重 ...

  6. 0040 Java学习笔记-多线程-线程run&lpar;&rpar;方法中的异常

    run()与异常 不管是Threade还是Runnable的run()方法都没有定义抛出异常,也就是说一条线程内部发生的checked异常,必须也只能在内部用try-catch处理掉,不能往外抛,因为 ...

  7. 0039 Java学习笔记-多线程-线程控制、线程组

    join线程 假如A线程要B线程去完成一项任务,在B线程完成返回之前,不进行下一步执行,那么就可以调用B线程的join()方法 join()方法的重载: join():等待不限时间 join(long ...

  8. 0041 Java学习笔记-多线程-线程池、ForkJoinPool、ThreadLocal

    什么是线程池 创建线程,因为涉及到跟操作系统交互,比较耗费资源.如果要创建大量的线程,而每个线程的生存期又很短,这时候就应该使用线程池了,就像数据库的连接池一样,预先开启一定数量的线程,有任务了就将任 ...

  9. 【java学习笔记】线程

    1.线程的定义 ①继承Thread类,将执行的任务逻辑放到run方法中,调用start方法来开启线程 public class ThreadDemo { public static void main ...

  10. Java学习笔记之——线程的生命周期、线程同步

    一. 线程的生命周期 新建(new Thrad):创建线程后,可以设置各个属性值,即启动前 设置 就绪(Runnable):已经启动,等待CPU调动 运行(Running):正在被CPU调度 阻塞(B ...

随机推荐

  1. 浅谈 C&plus;&plus; 中的 new&sol;delete 和 new&lbrack;&rsqb;&sol;delete&lbrack;&rsqb;

    在 C++ 中,你也许经常使用 new 和 delete 来动态申请和释放内存,但你可曾想过以下问题呢? new 和 delete 是函数吗? new [] 和 delete [] 又是什么?什么时候 ...

  2. broadcom移植到openwrt总结

    评估及移植BCM5862x及BCM5301x到openwrt平台下: 一.首先得分清楚几个基本概念: 1.文件系统  文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固 ...

  3. Mac 下 Nginx、MySQL、PHP-FPM 的安装配置

    用了3年多的本本罢工,最近新入手了一台 rmbp,一堆工作环境要配置,LNMP 里的 NMP 是常规要安装的,恰好也是第一次在 mac 上安装配置 nginx.mysql.php,所以顺便做个记录,免 ...

  4. 【转】ASP&period;NET MVC 使用 FluentScheduler 定时器计划任务

    MacBook Pro 只有四个 USB Type-C 接口是否错了? 一项新技术的诞生总会对已存在的事物造成冲击或影响,如果大家都害怕冲击与影响,那这个世界永远像现在不变就行了,大家都好好的,待在自 ...

  5. Apache服务器 配置多个网站解决方案

    2016.5.28   今周六   下午   阴     无风 周末接了个小单,弄一个企业站,用php语言:于是又要拿起好久没动的php啦! 关键第一步是搭建Apache环境,在这里本人用的是wamp ...

  6. 最短路径算法—Dijkstra&lpar;迪杰斯特拉&rpar;算法分析与实现&lpar;C&sol;C&plus;&plus;&rpar;

    Dijkstra算法 ———————————最后更新时间:2011.9.25———————————Dijkstra(迪杰斯特拉)算法是典型的最短路径路由算法,用于计算一个节点到其他所有节点的最短路径. ...

  7. C语言-结构体

    C语言中数组是把相同类型的数据类型的变量集中在一起了,而结构体则是把不同类型的变量聚集在一起. 结构体也是一种数据类型,但是它是一种自定义的数据类型,也就是说和使用其他数据类型不一样,我们得先定义这种 ...

  8. Android&colon; 工具使用备忘

    Gradle Gradle本地路径设置 如果在AndroidStudio内设置了使用local的Gradle路径,就直接放那边,啥问题都不会有.如果使用推荐的设置,那么更新的时候很有可能会有问题. 在 ...

  9. 全局Ajax加载时呈现Loading

    全局设置: 1 2 3 4 5 $(document).bind("ajaxSend", function () {         $("#loading_messag ...

  10. android studio 清空缓存插件

    http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2016/0308/4036.html 一个提高开发效率的ADB插件:ADB IDEA 泡在 ...