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

并发相关

    博客分类:
  • J2SE
阅读更多
1:实现Runnable接口并编写run()方法
2:Thread.yield()的含义是对线程调度器的一种建议,通常是切换线程
3:ExecutorService是具有生命周期的Executor,CachedThreadPool为每个任务创建一个线程,而FixedThreadPool使用了有限的线程集来执行任务,SingleThreadExecutor是数量为1的FixedThreadPool
4:Callable接口能在任务完成时返回一个值
5:Executor的submit()方法会产生Future对象,isDone()检查该对象是否完成,get()获取结果
6:Thread可以用setPriority()方法调整优先级,有MAX_PRIORITY,NORM_PRIORITY,MIN_PRIORITY
7:在启动之前调用线程的setDaemon(true)方法可以将其设置为后台线程,isDaemon()方法确定线程是否是后台线程,任何后台线程创建的线程都是后台线程
8:某线程在另一个线程t上调用t.join(),则此线程将被挂起,直到目标线程t结束才恢复,即t.isAlive()返回为假,或者在join()上带一个超时参数
9:使用并发时,将域设为private非常重要,因为synchronized关键字不能防止其他任务直接访问域
10:Brain同步规则:如果你正在写一个变量,它可能接下来将被另一个线程读取,或者正在读取一个上一次已经被另一个线程写过的变量,那么你必须使用同步,并且读写线程都必须用相同的监视器锁同步
11:Lock对象相比synchronized缺乏优雅但更加灵活,ReentranLock允许尝试获取但最终未获取锁,以便决定是否执行其他任务
12:宁愿使用同步控制块而不是对整个方法进行同步控制,使得其他线程能更多的访问
13:ThreadLocal对象为每个单独线程分配自己的存储,不会出现竞争条件
14:新的concurrent类库避免对Thread对象的直接操作,尽量通过Executor来执行所有操作,由submit()返回的Future对象,调用cancel(true)方法可以终端由Executor启动的单个线程
15:能中断sleep()的调用,不能中断I/O操作或synchronized锁
16:无论何时,只要任务以不可中断的方式被阻塞,都有潜在锁住程序的可能,而ReentranLock上阻塞的任务具有可以被中断的能力,这与用synchronized阻塞任务完全不同
17:调用notifyAll()比调用notify()更安全,反之则是一种优化
18:同步队列是比wait()和notifyAll()高级的协作,java.util.BlockingQueue接口提供了该队列,可以使用LinkedBlockingQueue(无界)或者ArrayBlockingQueue(固定大小),同步队列在任何时刻只允许一个任务插入或移除元素
19:CyclicBarrier适用于这样的情况:你希望创建一组任务,它们并行地执行工作,然后在进行下一个步骤前等待,直至所有任务完成(有点像join),非常像CountDownLatch,只是后者是触发一次的事件,而CyclicBarrier可以多次重用。(赛马游戏)
20:DelayQueue,有序无界BlockingQueue,到期才能取走对象;PriorityBlockingQueue,优先级队列
21:ScheduledThreadPoolExecutor设置计划的运行时间
22:Semaphore允许n个任务同时访问资源
23:Exchanger使得两个对象互换栅栏
24:ReadWriteLock对不频繁写入,频繁读出情况进行优化
25:原子类:AtomicInteger,AtomicLong,AtomicReference
26:免锁容器:ConcurrentHashMap,CopyOnWriteArrayList
分享到:
评论

相关推荐

    java 多线程高并发相关资料收集

    本文将围绕“Java多线程高并发相关资料收集”这一主题,详细探讨这两个领域的核心知识点。 首先,多线程是指在单个程序中同时执行多个线程。Java提供了一个强大的多线程支持,允许开发者创建、管理和控制多个执行...

    并发相关书籍整理 高质量

    这五本书籍,包括《JAVA并发编程 核心方法与框架》、《Java并发编程:设计原则与模式(第二版)》、《Java并发编程实战(中文版)》、《Java多线程编程核心技术_完整版》以及《Java多线程编程实战指南 设计模式篇》...

    java面试多线程高并发相关回家技巧(超经典)

    本文将围绕“Java面试多线程高并发相关回家技巧”这一主题,深入探讨相关概念、原理以及面试中可能遇到的问题,帮助你做好充分准备。 一、线程基础 1. **线程的创建**:Java提供了两种创建线程的方式,一是通过实现...

    ORACLE最大并发数查询

    使用`show parameter`命令可以查看与并发相关的系统参数。例如,执行`show parameter processes;`命令,可以显示`PROCESSES`参数的值,该参数定义了数据库实例允许的最大并发进程数,其中包括了所有类型的会话(如...

    Java多线程并发相关资料汇总

    资源名称:Java多线程并发相关资料汇总   资源目录: 【】JavaConcurrencyinPractice 【】JavaThreads(3rdEdition) 【】JAVA多线程并发 【】Java多线程并发访问解决方案 【】java多...

    并发相关知识点思维导图整理

    并发相关知识点思维导图整理,适合java开发人员

    java并发笔记

    - **JDK1.3**: 引入了J2SE、J2EE和J2ME三个发展方向,同时JVM首次内置了JIT编译器,虽然此阶段还未引入并发相关的API,但是为后续的并发优化打下了基础。 - **JDK1.4**: 增加了许多新特性,如正则表达式、异常链、...

    高并发相关实践

    在IT行业中,高并发是一个关键领域,特别是在互联网和大数据时代,系统能否处理大量并发请求,直接决定了服务的稳定性和用户体验。本实践主要关注如何设计和优化高并发系统,确保其在大规模用户访问下仍能高效运行。...

    高并发总结

    总结,理解和掌握这些高并发相关的概念和技巧对于构建高性能、可扩展的系统至关重要。从同步异步的选择,到并发并行的理解,再到线程管理和无锁编程,每个环节都对系统的效率和稳定性产生深远影响。在实际应用中,...

    帆软7.0.4并发补丁

    - 数据库优化:并发问题往往与数据库的性能紧密相关,可能需要进行数据库索引优化、读写分离、缓存策略调整等,以提高整体性能。 - 监控与调优:定期监控系统性能,通过日志分析和性能监控工具找出瓶颈,进行持续...

    多线程与并发相关文档.zip

    在IT领域,多线程和并发是至关重要的概念,尤其在现代高性能计算和分布式系统中。多线程允许一个程序同时执行多个不同的任务,而并发则意味着系统可以在同一时间处理多个请求或操作,提升了资源利用率和系统响应速度...

    Java并发编程与高并发解决方案

    学会高并发处理思路与手段,让跳槽面试...无论面试还是实际开发,几乎都会涉及并发相关知识及高并发相关场景处理,如果你想系统的学习一下并发编程 并了解一下实际的高并发场景及应对方案,那这门课就是为你准备的。

    java高并发相关知识点.docx

    Java高并发编程是Java开发中的重要领域,尤其在大规模分布式系统和互联网应用中,对系统的高并发处理能力有着极高的要求。以下将详细介绍这些关键知识点: 1. **线程** - **继承Thread类**:创建线程的一种方式是...

    java相关书籍:并发和effictive java

    该压缩包里含有两本pdf书籍:effictive java第二版和java并发实战,希望能对大家提升技术有所帮助。

    实战java高并发程序设计源码下载

    下面,我们将深入探讨Java并发相关的知识体系。 一、并发基础 并发是指多个任务在同一时间间隔内执行,而并行则意味着这些任务是真正的在同一时刻执行。Java中的并发主要通过多线程实现,线程是操作系统分配CPU资源...

    Java 并发编程实战.pdf

    书中会首先介绍Java并发编程的基础知识,包括线程的创建和运行,同步机制的基本用法,以及Java内存模型的相关概念。随着章节的深入,作者可能会更深入地讲解Java提供的并发工具,例如锁、原子变量、线程池、以及并发...

    java高并发

    本文档主要系统性的总结和阐述了与Java并发相关的知识点

    (PDF带目录)《Java 并发编程实战》,java并发实战,并发

    2. **同步机制**:Java中的同步机制包括`synchronized`关键字、`wait()`, `notify()`和`notifyAll()`方法,以及`Lock`接口和相关的实现,如`ReentrantLock`。这些机制用于控制对共享资源的访问,防止数据不一致和竞...

    实战Java高并发程序设计(高清版)

    在互联网服务中,高并发通常与海量数据、分布式系统和微服务架构紧密相关。Java作为一种多平台、高性能的编程语言,是实现高并发程序的理想选择。 书中的内容可能涵盖了以下几个核心知识点: 1. **线程基础**:...

    WEBAPI多线程并发测试工具

    **标题与描述解析** ...以上是基于给定信息生成的API测试和多线程并发测试相关的详细知识点,涵盖了从理论基础到实践操作的多个层面。对于开发和维护高质量的Web API服务,这些知识都是必不可少的。

Global site tag (gtag.js) - Google Analytics