zoukankan      html  css  js  c++  java
  • 多线程并发编程

    1.线程和进程的概念

    进程是一个执行的程序,进程里面有多个线程,线程是进程中负责执行的程序的一执行单元,线程本身是依靠程序进行运行的,线程是程序中一个顺序控制流。
    线程分为单线程和多线程。 多线程能更好利用cpu资源。
    以前单进程的,时间片切换

    多线程实现方式: 继承thread,实现runnable。
    ExecutorService
    CallableFuture 带返回值的多线程,方法执行完给一个返回值。

    2. 多线程的生命周期

    初始状态 -- 可运行状态 -- 运行中 -- 结束

    运行中通过yield或时间片轮询变成可运行状态

    运行中 通过synchronized变成锁定状态
    运行中通过wait 进入等待队列
    等待队列通过notify notifyall wait时间执行完 等唤醒一个锁定状态的线程,拿到锁的标记,进入可运行状态

    运行中通过sleep,join让当前进程进入阻塞状态
    阻塞状态通过sleep结束,join线程执行完变成可运行状态

  • 相关阅读:
    日志处理
    md5加密
    os 模块
    time模块
    函数的进阶
    参数 返回值
    文件操作
    集合 拷贝
    linux如何更快的远程拷贝?scp,tar,rsync?
    修改内核临时端口范围
  • 原文地址:https://www.cnblogs.com/james0/p/9280363.html
Copyright © 2011-2022 走看看