课件-第十三章线程_第1页
课件-第十三章线程_第2页
课件-第十三章线程_第3页
课件-第十三章线程_第4页
课件-第十三章线程_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

File类流的概念流的分类序列化线程的概念Java中线程的使用线程的状态线程同步问题notify方法和wait方法

线程

在一个程序中同时运行的多个独立流程,每一个独立的流程就是一个线程线程并发多个线程并发执行主线程当JVM启动之后,加载类文件,发现main方法,那么就会为main方法创建一个线程,用于main方法执行,这个为main方法创建的线程称为主线程

在Java中创建线程的方法有两种方法一继承java.lang.Thread类方法二实现java.lang.Runnable接口

继承Thread类自定义一个线程类继承自Thread重写Thread的run方法创建一个该类的对象调用该类继承自Thread的start方法开启线程

Runnable接口开发线程用户开发一个类实现Runnable接口实现run()运行线程根据学习过的知识判断,以上两种线程创建方法,哪一种更好程序的输出结果固定吗?程序中存在几个线程?执行的先后顺序可不可以直接在main方法中直接调用run()

void

sleep(longtime)方法用于使当前线程休眠指定的毫秒数利用sleep方法对线程的控制是非常不精确的join方法可以精确控制线程join方法也会导致线程阻塞特点:如果当前线程中调用了另外一个线程的join方法,当前线程会立即阻塞,直到另外一个线程运行完成

join方法的问题如果2个线程彼此调用对方的join方法进行。解决办法public

final

void

join(long

millis)导致程序无throws

InterruptedException

产生数据不一致的原因

多个线程并发

了同一个对象,如果破坏了不可分割的操作,从而就会造成数据不一致

被多线程并发 时如果一个对象有可能出现数据不一致的问题,那么这个对象称为线程不安全的对象如何解决多线程并发 的问题synchronized(object){代码块

}

商品类

生产者类

消费者类

程序主类线程的概念线程的创建线程的状态线程同步

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论