Java当中的线程

1. 进程和线程

2. 多线程程序运行模式

3. 定义线程的方法

1. 进程和线程

多进程:在操作系统中能(同时)运行多个任务(程序)

多线程:在同一应用程序中有多个顺序流(同时)执行

2. 多线程程序运行模式

生成线程--->就绪状态--->运行状态--->就绪状态--->运行状态--->....--->死亡状态

3. 定义线程的方法

Java中有两个, 今天学习其中一个.


1 class FirstThread extends Thread{  //定义一个线程类, 继承类Thread
2 public void run(){ //重写其中的方法run(), run()方法称为线程体
3 for(int i=0; i< 100;i++){
4 System.out.println("thread--->"+i);
5 }
6 }
7 }


1 class Test{
2 public static void main(String args []){
3 FirstThread fd = new FirstThread();
4 fd.start(); //start()开启子线程, 进入上述的 就绪状态!
5 for(int i=0; i< 100;i++){
6 System.out.println("main--->"+i);
7 }
8 }
9 }

主线程与子线程之间 
执行顺序是无规律的!!!

Java当中的线程

时间: 2024-10-24 15:27:36

Java当中的线程的相关文章

Java当中的线程(三)

1. 多线程的数据安全 2. 同步线程的方法 1. 多线程的数据安全 1 class MyThread implements Runnable{ 2 int i = 100; 3 public void run(){ 4 while(true){ 5 System.out.println(Thread.currentThread().getName()+i); 6 i--; 7 Thread.yield(); 8 if(i<0){ 9 break; 10 } 11 } 12 } 13 } 1 c

Java当中的线程(二)

1. 实现线程的第二种方法 2. 控制线程的常用方法 1. 第一种方法是使用继承, 但Java只能使用一次继承, 因此下面这种方法使用的更多 1 class RunnableImpl implements Runnable{ 2 public void run(){ 3 for(int i = 0; i< 100; i++){ 4 System.out.println("Runnable--->" + i); 5 } 6 } 7 } 1 class Test{ 2 publ

23.java当中的线程

进程和线程 多线程:在操作系统中能(同时)运行多个任务(程序) 多线程:在同一应用程序中有多个顺序流(同时)执行 线程的执行过程 线程的执行过程 创建线程的方法 方法1:定义一个线程类,他继承类Thread并重写其中的方法run(),方法run(),称为线程体:由于java只支持单继承,用这种方法定义的类不能继承其他类 多线程程序运行模式及方法 定义一个类FirstThread继承Thread,之后用复写的方法,线程执行的时候,执行的是run()中的代码 生成FirstThread的对象,然后调

Java当中的线程(三)

1.多线程的数据安全 class MyThread implements Runnable{ int i = 100; public void run { while(true){ //Thread.currentThread();获取当前线程是在哪个线程当中运行 System.out.println(Thread.currentThread().getName() + i); i--; Thread.yield(); if(i < 0 ){ break; } } } } class Test{

Java当中的线程(二)

1.实现线程的第二种方法 提供一个实现接口Runnable的类作为线程的目标对象,在初始化一个Thread类或者Thread子类的线程对象时,把目标对象传递给这个线程实例,由该目标对象提供线程体 class RunnableImpl implements Runnable{ public void run(){ for(int i = 0 ; i < 100 ; i ++ ;){ System.out.println("Runnable-->" + i); } } } cl

【Android 初学】11、关于Android当中的线程(初级)

Start Android 1.回顾Java当中的线程概念 1)线程的两种实现方式 2)线程的生命周期 3)多线程同步 (多个线程访问同一个资源,在同) 2.MainThread与Worker Thread 1)UI相关的代码就是MainThread 2)其他代码就是WorkerThread(不允许操作UI,ProgressBar可以) 3)在一个应用程序当中,主线程通常用于接收用户的输入,以及将运算的结果反馈给用户(也就是主线程不能阻塞) 对于一些可能会产生阻塞的操作,必须放在Worker T

java笔记--使用线程池优化多线程编程

使用线程池优化多线程编程 认识线程池 在Java中,所有的对象都是需要通过new操作符来创建的,如果创建大量短生命周期的对象,将会使得整个程序的性能非常的低下.这种时候就需要用到了池的技术,比如数据库连接池,线程池等. 在java1.5之后,java自带了线程池,在util包下新增了concurrent包,这个包主要作用就是介绍java线程和线程池如何使用的. 在包java.util.concurrent下的 Executors类中定义了Executor.ExecutorService.Sche

Java当中的堆与栈详细解析

总结第一句话:Java语言使用内存的时候,栈内存主要保存以下内容:基本数据类型和对象的引用,而堆内存存储对象,栈内存的速度要快于堆内存.总结成一句话就是:引用在栈而对象在堆. Java疯狂讲义的一段对话作为开场白. 一个问题:为什么有栈内存和堆内存之分? 答:当一个方法执行时,每个方法都会简历自己的内存栈,在这个方法内定义的变量将会逐个放入这块栈内存里,随着方法的执行结束,这个方法的内存栈也将自然销毁.因此,所有在方法中创建一个对象时,这个对象将被保存到运行时数据区中,以便利用(因为对象的创建成

JAVA当中内存管理与垃圾回收!

很多Java面试的时候,都会问到有关Java垃圾回收的问题,提到垃圾回收肯定要涉及到JVM内存管理机制,Java语言的执行效率一直被C.C++程序员所嘲笑,其实,事实就是这样,Java在执行效率方面确实很低,一方面,Java语言采用面向对象思想,这也决定了其必然是开发效率高,执行效率低.另一方面,Java语言对程序员做了一个美好的承诺:程序员无需去管理内存,因为JVM有垃圾回收(GC),会去自动进行垃圾回收. 其实不然: 1.垃圾回收并不会按照程序员的要求,随时进行GC. 2.垃圾回收并不会及时