疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

第十节:详细讲解一下Java多线程,随机文件


 

 前言

大家好,给大家带来第十节:详细讲解一下Java多线程,随机文件的概述,希望你们喜欢

  • 多线程的概念
  • 线程的生命周期
  • 多线程程序的设计

多线程的概念

多线程的概念:程序是静态的,进程是动态的。多进程是操作系统中多个程序同时执行。线程是最小的执行单位,同类的线程共享内存空间和系统资源。

多线程独享资源有:寄存器,系统堆栈,多线程就是多个线程同时执行。

多线程指多个线程同时运行,并且每个线程可以执行不同的任务。

线程(可称为轻负荷进程)

  • 线程特点:可以共享内存空间系统资源

线程的生命周期

进程有创建和销毁过程,线程也是,线程也是从创建,运行到销毁的过程。

线程:创建,可运行,运行中,挂起,死亡五种。

编程个多线程:

  1. 通过继承线程类Thread来创建;
  2. 通过建立实现Runnable接口的类。

Thread类,必须覆盖父类的run()方法:

class Mythread extends Thread{  public void run(){  } }

创建一个实现Runnable接口的类,该接口只有一个方法:

public void run()

实现了Runnable接口的类,调用该对象的start()的方法来启动线程。

对于继承Thread类,就不能再次继承别的类了,是因为在Java中只允许单继承,不能多继承。而实现Runable接口,接口可以多实现多个接口。

  • 线程的状态
  • 常用方法

线程的一生,也就是生命周期,从创建,运行到消亡的过程。

创建:使用new创建线程对象后,系统没有提供运行的资源。

可运行状态:使用start()方法启动线程后系统就分配资源。

运行状态:线程用CPU进行。

阻塞状态:

public static native void sleep() public final void wait()

死亡:

public final boolean isAlive()

常用方法

currentThread():该方法表示当前正在使用的线程; Interrupt():该方法是“吵醒”处理休眠的线程。
  • 线程的同步问题
  • wait与notifyall方法

线程的同步

关键字synchronized

  1. 多线程就是调用这个synchronized的方法的,
  2. 当线程用了这个方法,那么其他线程想使用这个方法时就得等,直到线程使用完该调用的方法。

同步中的等待

  1. wait()方法:暂时让出cpu;
  2. notifyAll()方法:等待结束。

线程的联合方式

A.join();      //等线程 A 执行完毕 A.join(1000);  //等待 A, 等待时间是1000毫秒

随机文件

RandomAccessFile,它既可以输入又可以输出

RandomAccessFile(File file,String mode) "rw"写 RandomAccessFile(String name,String mode) r读
writeXXX()----写对应信息 readXXX()----读对应的数据 writeInt() write(byte类型数组) writeDouble() readInt() read(byte类型数组) readDouble()

如果觉得不错,那就点个赞吧!❤️

总结

  • 本文讲了第十节:详细讲解一下Java多线程,随机文件,如果您还有更好地理解,欢迎沟通