`
sydra
  • 浏览: 5403 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

我的多线程提纲

阅读更多
一.并行计算
    多线程就是通过并行计算提高程序运行效率,之后的讨论大多数都是由于程序的并行计算所产生的问题.

二.多任务的并行计算
    最简单的多线程,把不同的任务放在不同的线程中运行,典型应用Servlet ,ThreadLocal

三.多任务中存在共享资源
    并行计算中的任务中存在共享资源,资源在多线程共同操作时会产生一致性问题,为了保证数据的一致性,必须提供原子操作.

四.有锁算法
    通过锁来保证一系列操作的原子性,synchronized,用锁要了解的东西
    1.锁住的资源依旧是单线程执行
    2.竞争:可以有优先级,没有保证
    3.等待被锁住的资源也是一种消耗
    4.锁本身的消耗并不小.
    5.防止死锁
    6.synchronized声明不会被继承

五.有锁的进阶算法
    Lock类,读写锁.

六.无锁算法
    不通过程序级别的锁来实现数据一致,cas(compare and set)算法,下面是关于cas.
    1.cas是通过底层实现的原子操作(cpu指令)
    2.cas并不是在所有情况下都比有锁算法效率高

七.其他
    1.线程池,因为创建和销毁线程也有消耗,所以使用池算法.
    2.java中的线程安全数据结构--java.util.concurrent包及子包.
    3.for/join框架,把大任务拆分成多个小任务多线程执行的算法.


总结.1多线程程序很复杂,2糟糕的多线程程序比单线程效率还要低.
分享到:
评论

相关推荐

    吕鑫:【C++语法与数据结构第25天】【第3堂课】多线程与TCP通讯流程

    1、讲解和演示通过多线程技术,实现接收端和发送端在同一进程内同时运行; 2、讲解和演示TCP通讯流程;

    JAVA面试提纲包括JAVA基础知识总结、数据结构、JVM、多线程等

    之前前辈传下来的复习提纲,帮助校招生找到好的工作。 其中校招真题题解,JAVA IO,JAVA 并发,JAVA 基础,JAVA容器,JVM Leetcode、LINUX,Mysql,代码风格规范,计算机操作系统、算法、剑指offer、面向对象思想、...

    java课程期末复习提纲及课后答案

    7. **多线程**:涵盖线程的创建、同步和通信,如synchronized关键字、wait()和notify()方法。 8. **Java API的使用**:如Math类、Date类、Calendar类等标准库的使用。 9. **异常处理**:讲解如何使用try-catch-...

    复习提纲.pdf_电子版_pdf版

    - 多线程:内置多线程支持,方便处理并发任务。 - 动态性:允许程序在运行时加载新类,适应变化的需求。 - 解释型:Java代码被编译成字节码,由JVM逐行解释执行。 2. Java程序的类型: - Application:标准的...

    java复习提纲 短小精悍

    以下是一份基于“java复习提纲”的详细知识点概述,涵盖了Java IO、多线程、网络编程以及异常处理等关键领域。 一、Java IO(输入/输出) 1. 流的概念:Java中的IO操作是通过流进行的,流是一组有序的数据序列,...

    Java详细复习提纲

    - 多线程(Multithreading):Java支持并发编程,通过Thread类或Runnable接口创建线程。 四、Java标准库 Java标准库提供了大量的类和接口,涵盖了I/O、网络编程、集合框架、XML处理、日期时间、数据库连接等许多...

    JAVA期末考试复习提纲

    Java期末考试复习提纲主要涵盖了Java程序设计的关键概念和特性,包括Java语言的特性、面向对象编程、异常处理、多线程以及包和类的管理等多个方面。以下是对这些知识点的详细阐述: 1. **Java语言特性**: - **...

    嵌入式系统复习提纲嵌入式系统复习提纲.doc

    第五章:操作系统在嵌入式系统中的作用,尤其是多进程和多线程的概念,以及任务间的通信和同步机制,如信号量、消息队列等。 第六章:嵌入式设计的优化方法,包括代码优化、资源分配优化等,以提高性能和减少功耗。...

    JAVA期末的复习提纲

    - **类和方法的修饰符**:final表示不可改变,abstract表示抽象,static表示静态,synchronized用于线程同步。 5. **final方法**: - 保证函数行为的不变性,防止子类覆盖。 - 有时用于优化,但编译器会自动判断...

    期末复习提纲

    本文总结了厦门理工学院期末嵌入式系统软件设计复习提纲的主要知识点,涵盖了嵌入式 Linux 开发环境搭建、gcc 的基本用法、嵌入式 Linux 动态库和静态库的制作、make 的工作过程、多线程编程、网络字节序和主机字节...

    Java复习提纲Java复习提纲.doc

    当多个线程尝试访问共享资源时,为了防止数据不一致,需要同步。Java提供了`synchronized`关键字实现线程同步。 13. **异常层次结构**: Java异常分为已检查异常(如`ClassNotFoundException`)和未检查异常(如`...

    湖南大学操作系统复习提纲

    多线程Web服务器通常采用主线程接收客户端连接,然后为每个连接创建或分配一个线程来处理请求,这种方式可以充分利用多核处理器的并发能力。 #### 5. 线程实现技术比较 - **用户空间线程**:完全由应用程序管理,...

    ssd3期末考试提纲

    学习线程、同步、锁等并发编程概念,以及`Executor`框架、`Future`接口等高级并发API的使用,能够编写高效、安全的多线程应用。 此外,提纲还涉及了Java I/O流的操作、Swing组件的使用、模型-视图-控制器(MVC)...

    Linux复习提纲--2019.docx

    并行指两个或多个事件在同一时刻发生,而并发则在宏观上看起来同时发生,但在微观上是交替执行的。 【进程】 进程是执行中的程序,包含程序代码、数据和进程控制块(PCB),是操作系统资源分配的基本单位。 【进程...

    个人Rust学习提纲.zip

    【个人Rust学习提纲】 在编程世界中,Rust是一种相对较新的系统级编程语言,以其安全性、并发性以及性能而备受关注。...本提纲覆盖了从入门到进阶的多个层次,希望能帮助你系统地掌握Rust,成为熟练的Rust程序员。

    历年考点-操作系统复习提纲1

    多线程模型包括单线程、多线程等,线程优点在于能提高并发性和效率。用户级线程和内核级线程分别由用户空间和内核管理,各有优劣。 第五章:CPU调度 CPU调度决定了进程如何分享CPU时间,调度准则包括公平性、响应...

    JavaLogic复习提纲.txt

    - **线程**: Java支持多线程编程,可以利用Thread类或Runnable接口来创建线程,实现并发执行。 以上是根据提供的信息所推测的主要知识点及其解释。需要注意的是,由于部分内容不够清晰,上述分析可能存在一定的主观...

    华农操作系统复习提纲

    互斥是为了防止多个线程或进程同时访问临界资源而引入的机制。信号量是实现互斥和同步的一种方法,包含P操作(semWait)和V操作(semSignal)。 11. 死锁的处理 死锁是多个进程因竞争资源而无限等待的现象。处理...

    Java软件开发基础课件+复习提纲+代码

    第13章可能涉及到更高级的话题,如多线程或者I/O流,而第4章则可能涉及类和对象的基础知识,包括封装、继承和多态。 "复习提纲.pdf" 是一个关键的学习辅助工具,它通常包含了课程的重点和难点,帮助学生系统地回顾...

Global site tag (gtag.js) - Google Analytics