zoukankan      html  css  js  c++  java
  • 第十节:详细讲解一下Java多线程,随机文件

    前言

    大家好,我是 Vic,今天给大家带来第十节:详细讲解一下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多线程,随机文件,如果您还有更好地理解,欢迎沟通
    • 定位:分享 Android&Java知识点,有兴趣可以继续关注
  • 相关阅读:
    unistd.h文件
    error C3861: “getpid”: 找不到标识符
    #include <unistd.h> 的作用
    VS2013 配置pthread
    VS2008和VC6.0下使用pthread.h头文件
    文件下载之断点续传(客户端与服务端的实现)
    C++ 判断进程是否存在
    C/C++遍历进程和进程ID的小工具
    linux --> 文件系统十问
    网络通信 --> CRC校验
  • 原文地址:https://www.cnblogs.com/dashucoding/p/11932635.html
Copyright © 2011-2022 走看看