1.线程 Thread
进程就是一个程序,线程是程序中的执行单元。进程中可以有多个线程。
正常情况下,每个线程都有自己独立的执行流程,互不干扰。人为写的话,可以让两个线程产生交集。
2.开启线程的四种方法:
一:一个类继承Thread类,创建一个线程,开启一个线程 如:
Thread thread = new HelloThread()
二;一个类实现Runnable接口,通过调用Runnable的执行方法,来开启线程 如
Thread thread = new HelloThread(new HelloRunnable());
三;通过使用匿名方法内部类,在一个方法的内部添加有匿名内部类的运行方法来开启线程
四;利用类的构造方法,进行复写,在一个对象在产生时就调用运行方法
3.什么是GC
GC是java中的垃圾回收机制
java在内存中创建的对象,程序员是不能手动销毁的
这也是java相对于c的好处,c程序员都是要手动销毁内存中的内容
而我们java程序员就不需要做这个工作,由java的内部的机制帮助我们管理内存
GC就是帮助我们把内存中不用的对像销毁掉,释放内存
当一个main方法执行时
实际是启动了两个线程
一个是我们能看到的主线程
一个是在后台运行,我们也看不见的GC
注:GC什么时候销毁对象,由他自己决定
4.线程的抢占执行,多个线程共同去争抢CPU的执行权,谁抢到谁执行,所以就看到多线程交替。
5.原子性操作 int a = 1; //计算机只需要一步就可以完成的
6.synchrinized 同步
异步:你干你的,我干我的
同步:如果你先开始的,那等你干完了我再开始
进程就是一个程序,线程是程序中的执行单元。进程中可以有多个线程。
正常情况下,每个线程都有自己独立的执行流程,互不干扰。人为写的话,可以让两个线程产生交集。
2.开启线程的四种方法:
一:一个类继承Thread类,创建一个线程,开启一个线程 如:
Thread thread = new HelloThread()
二;一个类实现Runnable接口,通过调用Runnable的执行方法,来开启线程 如
Thread thread = new HelloThread(new HelloRunnable());
三;通过使用匿名方法内部类,在一个方法的内部添加有匿名内部类的运行方法来开启线程
四;利用类的构造方法,进行复写,在一个对象在产生时就调用运行方法
3.什么是GC
GC是java中的垃圾回收机制
java在内存中创建的对象,程序员是不能手动销毁的
这也是java相对于c的好处,c程序员都是要手动销毁内存中的内容
而我们java程序员就不需要做这个工作,由java的内部的机制帮助我们管理内存
GC就是帮助我们把内存中不用的对像销毁掉,释放内存
当一个main方法执行时
实际是启动了两个线程
一个是我们能看到的主线程
一个是在后台运行,我们也看不见的GC
注:GC什么时候销毁对象,由他自己决定
4.线程的抢占执行,多个线程共同去争抢CPU的执行权,谁抢到谁执行,所以就看到多线程交替。
5.原子性操作 int a = 1; //计算机只需要一步就可以完成的
6.synchrinized 同步
异步:你干你的,我干我的
同步:如果你先开始的,那等你干完了我再开始