配色: 字号:
多线程编程
2017-03-27 | 阅:  转:  |  分享 
  
多线程编程惠买集团maqunhua多线程分享大概内容maqunhua1、什么是线程2、线程的基
本操作3、基本的线程同步操作多线程进程
、线程maqunhua一、1.1概念:1、进程:一个计算机程序的运行实例,有自己的独立地址空间。2、线程:表示程序的执行
流程,是CPU调度执行的基本单位;同一进程中的线程共用相同的地址空间。多线程线程状态二、2.1线程状态:包括以下图中五种
Guanping.Li多线程三、3.1两种方式:第一种方式:使用Runnable接口创建线程;第二种方式
:直接继承Thread类创建对象;maqunhua创建线程的两种方式多线程四、4.1线程方法讲解:1、Thread.
stop():不推荐使用stop方法来终止线程,它会释放所有的锁资源2、Thread.interrupt():该方法中断线程,它
将接收到一个中断异常(InterruptedException),从而提早地终结被阻塞状态。而isInterrupted()通
过中断手段在运行中来判断线程是否中断来终止线程,但是必须重设中断标志位。maqunhua常见的线程方法多线程四、4.2线程
方法讲解:1、suspend():线程挂起,阻塞状态,不会释放锁2、resume():线程继续执行执行maqun
hua常见的线程方法多线程四、4.3线程方法讲解:1、join():当某个程序执行流中调用其他线程的join()方法时,
调用线程将被阻塞,直到被join方法加入的join线程完成为止。2、sleep():让当前正在执行的线程暂停一段时间并进入阻塞状
态。3、yeild():它不会阻塞该线程,它只是将该线程转入就绪状态;当调用了yield方法后,只有优先级与当前线程相同,或者优
先级比当前线程更高的就绪状态的线程才会获得执行的机;设置线程优先级的方法---setPriority()。
maqunhua常见的线程方法多线程四、4.4线程方法讲解:1、setDa
emon(true):设置守护线程,当一个java应用内,只有守护线程的时候,jvm就会自然退出。2、wait():导致当前的线
程等待,会释放其拥有的锁,直到其他线程调用此对象的notify()方法或notifyAll()方法。当前的线程必须拥有此对
象监视器(锁)。3、notify():唤醒在此对象监视器上(锁)等待的单个线程。4、notifyAll():唤醒在此对象监视器
上(锁)等待的所有个线程。maqunhua常见的线程方法多线程五、5.1同步、异步1、同步:就是指多个线程在逻辑上
互有前因后果的关系,一个线程要等待上一个线程执行完之后才开始执行当前的线程2、异步:是指一个线程去执行,它的下一个线程不必等待它
执行完就开始执行3、并发:在同一时间间隔内有多个线程在同时执行,就是线程的并发maqunhua线程安全多线程六、6
.1同步机制1、同步关键字:synchronized,对共享需要锁定的资源加上该关键字--即为同步监视器1)、指定加锁对象;对
给定对象加锁,进入同步代码块前要获得给定对象的锁2)、对当前类加锁,进入同步代码块前要获得当前类的锁3)、直接作用于实例方法;
对当前实例加锁,进入同步代码块前要获得当前实例的锁直接作用于静态的方法;2、volatile:是JAVA中的轻量级的同步机制;注
意:保证可见性,但不能保证原子性3、lock显示加锁,进行同步:java也可以用Lock显示的对临界区代码加锁以及解锁maq
unhua线程安全多线程七、7.1脏读、线程池1、脏读:就是一个线程的所访问的资源没处理完成,另一个线程过来访问这些资源
,就会导致脏读,如读写线程操作等。2、线程池线程池:JDK提供一套线程框架Execute,来管理线程,通过Execute创建特
定功能的线程池方法。优点:a.重用存在的线程,减少对象创建、消亡的开销,性能佳。b.可有效控制最大并发线程数,提高系统
资源的使用率,同时避免过多资源竞争,避免堵塞。c.提供定时执行、定期执行、单线程、并发数控制等功能。maqunhua
线程安全多线程八、8.1消息队列、模式1、在并发队列上JDK提供了两套实现,一个是ConcurrentLinkedQueu
e为代表的高性能队列,一个是BlockingQueue为接口的阻塞队列,都继承Queue。2、模式future模式,master-work模式,生产者--消费者模式。maqunhua线程安全 谢谢!惠买集团maqunhua
献花(0)
+1
(本文系关平个人图...首藏)