`
lliang54
  • 浏览: 4362 次
  • 性别: Icon_minigender_1
  • 来自: 南京
文章分类
社区版块
存档分类
最新评论

《java 并发编程实战》基础构建笔记

 
阅读更多
5.1.1 同步容器类的问题,在多线程的情况下,如,a 线程 对vector  执行 get 操作, 另外一个线程对vector 进行delete 操作,由于线程交替执行,可能有一个线程获取下标 为9 但是另外一个线程已经删除了下标为9的数据,导致数组下标越界,所以对同步容器进行复合操作,在高并发的情况下,就需要客户端加锁
5.1.2 迭代器与并发修改错误,在使用迭代器的过程中,可能会出现并发修改错误问题,例如 A线程删除了一个元素,当B线程发现计数器发生改变时,会抛出并发修改错误溢出,这个是一个jdk 的 设计,使用fail-fast ,使用快速失败模式,通知使用者已经发生异常了,在单线程的情况下也会出现,当使用迭代器模式删除数据的时候,会产生错误
public class AddRemoveListElement {

    public static void main(String args[]) {
        List<String> list = new ArrayList<String>();
        list.add("A");
        list.add("B");

        for (String s : list) {
            if (s.equals("B")) {
                list.remove(s);
            }
        }

        //foreach循环等效于迭代器
        /*Iterator<String> iterator=list.iterator();
        while(iterator.hasNext()){
            String s=iterator.next();
            if (s.equals("B")) {
                list.remove(s);
            }
        }*/    
    }
}
 
分享到:
评论

相关推荐

    Java并发编程实战-读书笔记

    《Java并发编程实战》个人读书笔记,非常详细: 1 简介 2 线程安全性 3 对象的共享 4 对象的组合 5 基础构建模块 6 任务执行 7 取消与关闭 8 线程池的使用 9 图形用户界面应用程序 10 避免活跃性危险 11 性能与可...

    《java并发编程实战》读书笔记-第5章-基础构建模块

    《java并发编程实战》读书笔记-第3章-对象的共享,脑图形式,使用xmind8制作 包括同步容器类、并发容器类、阻塞队列和生产者消费者模式、阻塞和中断方法、同步工具类。最后是构建高效且可伸缩的结果缓存

    java并发编程实践笔记

    ### Java并发编程实践笔记知识点详解 #### 一、保证线程安全的方法 ...以上是Java并发编程实践笔记中总结的关键知识点,涵盖了从基本概念到高级技术的应用,旨在帮助开发者构建高效、可靠的多线程应用。

    汪文君高并发编程实战视频资源下载.txt

    │ Java并发编程.png │ ppt+源码.rar │ 高并发编程第二阶段01讲、课程大纲及主要内容介绍.wmv │ 高并发编程第二阶段02讲、介绍四种Singleton方式的优缺点在多线程情况下.wmv │ 高并发编程第二阶段03讲、...

    实战Java高并发程序设计-试读

    《实战Java高并发程序设计》是一本专注于Java并发编程实践的书籍,试读版提供了前两章的内容,为读者提供了一个初步了解并发编程基础的窗口。在Java领域,并发编程是构建高性能、高效率系统的关键技术,对于软件开发...

    李兴华老师的java开发实战经典全套笔记.7z

    7. **Java EE**:如果笔记内容涉及到Java企业版,那么会涵盖Servlet、JSP、JDBC等技术,这些都是构建Web应用程序的基础。 8. **设计模式**:设计模式是软件工程中的最佳实践,笔记可能包含常见的设计模式如单例、...

    传智博客JAVA基础笔记个人总结

    传智博客的JAVA基础笔记个人总结是一份全面的学习资源,旨在帮助初学者或有一定基础的开发者巩固和提升Java编程技能。这份笔记是基于传智播客的课程内容,结合了牛牧老师和水镜老师的讲解精华,提供了27天的学习计划...

    Java 并发编程学习笔记之核心理论基础

    Java并发编程是编程领域中的重要组成部分,特别是在大型系统和服务器端开发中不可或缺。Java自诞生以来就内置了对多线程的支持,使得开发者能够轻松创建并行运行的任务,提升程序性能。然而,随着并发编程实践的深入...

    构建JAVA大型分布式电商项目实战高并发集群分布式系统架构PDF+视频.rar

    - 并发编程是应对高流量电商网站的关键,涉及线程池管理、锁机制(如synchronized、ReentrantLock)、并发容器(如ConcurrentHashMap)以及并发工具类的使用。 - 使用非阻塞I/O(NIO)和异步编程模型可以提高系统...

    韩顺平java从入门到精通笔记完整版

    在并发编程部分,笔记会介绍线程的创建和管理,同步机制如synchronized关键字和Lock接口,以及并发工具类如ExecutorService、Semaphore和CountDownLatch。了解这些内容能帮助你在多核环境下编写高效的程序。 对于...

    魔乐科技李兴华java笔记从实战到精通合集

    此外,课程还会涉及Java的高级主题,比如设计模式、并发编程、内存管理和性能优化,这些都是提升Java程序员专业技能的关键。李兴华老师的经验分享将帮助我们更好地理解和应用这些理论知识,解决实际问题。 总之,...

    java笔记 Java-Web笔记 J2EE三大框架笔记

    总的来说,这些笔记资料是学习Java Web和J2EE开发的宝贵资源,它们将帮助你构建扎实的Java基础知识,掌握Web开发核心技术,并熟悉企业级应用的开发流程。通过深入学习和实践,你可以成为一名熟练的Java Web开发者,...

    一部分网络编程笔记总结

    这些笔记主要涵盖了Java网络编程的基础概念、核心技术以及一些实践应用。下面将详细展开讲解相关知识点。 1. **网络基础知识**:网络编程首先需要理解TCP/IP协议族,包括IP地址、端口号、传输层(TCP/UDP)以及应用...

    个人Java学习过程中所有学习笔记

    这份"个人Java学习过程中所有学习笔记"包含了作者在学习Java时积累的宝贵经验,旨在帮助初学者或有经验的程序员巩固基础,提升技能。 笔记内容可能涵盖以下几个主要部分: 1. **Java基础**:这部分通常包括Java的...

    Java全程笔记,包括前后端笔记

    Java全程笔记涵盖了从基础到进阶的广泛主题,旨在帮助学习者系统地理解和掌握Java编程语言,同时也涉及到了前端开发的相关知识。以下是对这些知识点的详细解析: 1. **Java基础知识**:这部分内容通常包括Java语言...

    B站java狂神说笔记

    Java的多线程能力使得它在并发编程中表现出色。笔记涵盖了线程的创建、同步、并发工具类如Semaphore、CountDownLatch,以及线程池的使用。理解这部分内容可以提高程序的并行性和性能。 七、反射与注解 Java反射机制...

    Java网络编程教材

    总的来说,这份"Java网络编程教材"涵盖了广泛的Java网络编程知识,包括但不限于基础概念、API用法、协议解析、并发编程等。对于想要深入理解Java网络编程的初学者来说,这是一个非常宝贵的资源,通过系统学习和实践...

    Java项目学习笔记: SSM实战项目-Java高并发秒杀API,详细流程+学习笔记

    在本Java项目学习笔记中,我们关注的是SSM(Spring、SpringMVC、MyBatis)框架下的高并发秒杀API实现。这是一个典型的电商场景,其中涉及到的技术点广泛且实用,对于提升Java开发者处理高并发问题的能力至关重要。...

    java核心笔记 这是很基础的笔记 我自己整理的

    Java是世界上最流行的编程语言之一,尤其在企业级应用开发领域占据主导地位。这些"java核心笔记"涵盖了基础知识,是学习Java编程的绝佳起点。笔记共分为17天的学习内容...这些笔记是你构建坚实Java编程基础的宝贵资源。

    java 开发实战经典

    对于进阶学习者,线程和并发编程是提升程序性能的关键。Java提供了强大的线程管理机制,包括同步和锁机制,使多个线程能够同时执行任务。此外,Java的反射API允许程序在运行时检查和修改自身的结构,增加了编程的...

Global site tag (gtag.js) - Google Analytics