首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏battcn

    JAVA并发修炼手册 | 并发的概念

    我们在找工作时,经常在招聘信息上看到有这么一条:有构建大型互联网服务及高并发等经验,第一时间你想到的是媒体常说的双十一吗?带着问题,我们一起思考技术…. 高并发 它是互联网分布式系统架构设计中必须考虑的因素之一,通常是指,保证系统能够同时并行化处理海量请求 同步和异步 同步:发送一个请求,等待返回,然后再发送下一个请求。 并发和并行 ? 并发和并行 单核CPU(单处理器)上,只可能存在并发而不可能存在并行。 并行在多处理器系统中存在,而并发可以在单处理器和多处理器系统中都存在,并发能够在单处理器系统中存在是因为并发是并行的假象,并行要求程序能够同时执行多个操作,而并发只是要求程序假装同时执行多个操作(每个小时间片执行一个操作 个数成正比 参考文献 https://my.oschina.net/hosee/blog/597934 https://wangchangchung.github.io/2017/06/13/Java并发

    78930发布于 2018-12-13
  • 来自专栏Vincent-yuan

    Java开发手册-并发处理

    6.【强制】必须回收自定义的 ThreadLocal 变量,尤其在线程池场景下。 线程经常会被复用,如果不清理自定义的 ThreadLocal 变量,可能会影响后续业务逻辑和造成内存泄露等问题。 【强制】高并发时,同步调用应该去考量锁的性能损耗。 能用无锁数据结构,就不要用锁; 能锁区块,就不要锁整个方法体; 能用对象锁,就不要用类锁。 【强制】并发修改同一记录时,避免更新丢失,需要加锁。 要么在应用层加锁,要么在缓存加锁,要么在数据库层使用乐观锁,使用 version 作为更新依据。 【推荐】通过双重检查锁(double-checked locking)(在并发场景下)存在延迟初始化的优化问题隐患(可参考 The "Double-Checked Locking is Broken" 【参考】HashMap 在容量不够进行 resize 时由于高并发可能出现死链,导致 CPU 飙升,在开发过程中注意规避此风险。 19.

    1K30发布于 2021-07-13
  • 来自专栏全栈程序员必看

    Java开发手册并发处理

    6. 【强制】高并发时,同步调用应该去考量锁的性能损耗。能用无锁数据结构,就不要用锁;能锁区块,就不要锁整个方法体;能用对象锁,就不要用类锁。 【强制】并发修改同一记录时,避免更新丢失,需要加锁。要么在应用层加锁,要么在缓存加 锁,要么在数据库层使用乐观锁,使用version作为更新依据。 【推荐】在并发场景下,通过双重检查锁(double-checked locking)实现延迟初始化的优化问题隐患(可参考 The “Double-Checked Locking is Broken” Declaration 【参考】 HashMap在容量不够进行resize时由于高并发可能出现死链,导致CPU飙升,在开发过程中可以使用其它数据结构或加锁来规避此风险。 15.

    50720编辑于 2022-08-04
  • 来自专栏奔跑的蛙牛技术博客

    并发知识6

    并发散列映射的批操作 javase8 为散列映射提供批操作,即使有其他线程在处理映射,这些操作也能安全的执行。

    34520发布于 2018-09-05
  • 来自专栏信数据得永生

    NumPy 数组学习手册6~7

    ipdb> len(a) 7 ipdb> print a [0 1 2 3 4 5 6] 查看调用栈。 我们可以使用bt命令查看调用栈: ipdb> bt ... self.assertEqual(6, factorial(3)[-1]) np.testing.assert_equal(np.array([1, 2, 6]), factorial(3) self.assertEqual(6, factorial(3)[-1]) np.testing.assert_equal(np.array([1, 2, 6]), factorial(3) JPM in Cluster 5 KO in Cluster 6 MCD in Cluster 6 MMM in Cluster 8 MRK in Cluster 6 MSFT in Cluster 0 PFE in Cluster 6 PG in Cluster 6 T in Cluster 6 TRV in Cluster 6 UTX in Cluster 0 VZ in Cluster 6 WMT

    1.6K20编辑于 2023-04-23
  • 来自专栏java思维导图

    Alibaba开源内网高并发编程手册.pdf

    而今天分享的这份阿里内网“M9级全彩高并发编程手册”,让大家不仅能够学到深度、专业的编程知识,还能感受到阿里专注地提高编程技能的态度,始终如一地贡献、分享Java专业知识与经验的精神,以及持续学习、持续成长的进取精神 看干货 手册总共分为:源码分析篇,基础案例篇,实战案例篇,面试篇,系统架构篇5大篇章,由于篇幅限制,小编就展示资料的部分内容截图了。

    1.9K20编辑于 2022-03-15
  • 来自专栏写代码和思考

    Go语言基础6 - 并发

    并发 通过通信共享内存 Go程 信道 信道中的信道 并行化 可能泄露的缓冲区 2. 错误 Panic 恢复 1. 并发 1.1 通过通信共享内存 在并发编程中,为实现对共享变量的正确访问需要精确的控制,这在多数环境下都很困难。 实际上,多个独立执行的线程从不会主动共享。 1.2 Go程 Go程具有简单的模型: 它是与其它Go程并发运行在同一地址空间的函数。 它是轻量级的, 消耗几乎就只有栈空间的分配。 当调用完成后, 该Go程也会安静地退出,示例: go list.Sort() // 并发运行 list.Sort,无需等它结束。 函数字面在Go程调用中非常有用。 备注:可理解 为匿名函数的调用。

    61400发布于 2020-03-16
  • 来自专栏changxin7

    6.并发编程,总结

    p.is_alive()) # *** 判断子进程 False print(p.name) p.name = 'sb' print(p.name) print('主程序开始') 6. multiprocessing import Queue import random import time def producer(q, name): for i in range(1, 6) True t1.start() t2.start() print("main-------") # 3 # 结果: # 123 # 456 # main------- # end123 # end456 6. 并发数量 = 5 * 20 * 500 = 50000个并发,这是一般一个4cpu的机器最大的并发数。 ('%s eat 1' % name) # 2 g2.switch('常鑫') # 3 time.sleep(3) print('%s eat 2' % name) # 6

    1.1K20发布于 2019-09-10
  • 来自专栏网络技术联盟站

    中兴5250用户手册6个文档

    来源:网络技术联盟站 链接:https://www.wljslmz.cn/20057.html 本资料为【中兴5250用户手册6个文档】,内容详实,可供参考。 目录 IPv4路由分册.pdf IPv6分册.pdf 基本配置分册.pdf 命令手册.pdf 以太网交换分册.pdf 用户手册.pdf 截图 文档很多,就不一一截图了,有需要可以自行下载

    1.7K10编辑于 2023-03-01
  • 来自专栏信数据得永生

    OpenCV 图像处理学习手册6~7

    总之,速度增量为6x。 此增量非常重要,尤其是当您只需要更改几行代码时。 但是,有可能实现更高的速度增加速率,这与问题甚至内核的设计有关。

    2.1K30编辑于 2023-04-27
  • 来自专栏全栈修炼

    ES6 完全使用手册

    作者:冴羽 ,原文:https://github.com/mqyqingfeng/Blog/issues/111 前言 这里的 "ES6" 泛指 ES5 之后的新语法 这里的 "完全" 是指本文会不断更新 这里的 "使用" 是指本文会展示很多 ES6 的使用场景 这里的 "手册" 是指你可以参照本文将项目更多的重构为 ES6 语法 此外还要注意这里不一定就是正式进入规范的语法。 foo=foo&bar=bar oneLine 的源码可以参考 《ES6 系列之模板字符串》 3. 箭头函数 优先使用箭头函数,不过以下几种情况避免使用: 1. 参考 ES6 实践规范 babel 7 简单升级指南 不得不知的 ES6 小技巧 深入解析 ES6:Symbol 什么时候你不能使用箭头函数? (ES6) 中条件语句 ES6 带来的重大特性 – JavaScript 完全手册(2018版)

    1.7K30发布于 2019-07-17
  • 来自专栏GPUS开发者

    笨鸟手册6):如何远程访问Jetson NANO

    本教程依据《Nvidia Jetson Nano 遠端登入(Vino-VNC) 中文版》而来,感谢原作者奉献。

    3.2K21发布于 2019-11-20
  • 来自专栏狗哥的 Java 世界

    Java 并发6)Semaphore 源码分析

    Semaphore (信号量) 是 JUC 包中比较常用到的一个类,它是 AQS 共享模式的一个应用,可以允许多个线程同时对共享资源进行操作,并且可以有效的控制并发数,利用它可以很好的实现流量控制。

    38410发布于 2020-04-07
  • 《GIL移除下Python并发架构重构实操手册

    并发模型重构的核心价值与底层逻辑。 并发语义的重新定义是衔接Python底层并发机制与上层开发实践的关键纽带,GIL的长期存在让Python处于“伪并发”的语义框架之下,开发者无需关注底层线程的真实执行状态与资源竞争问题,而移除GIL后, 必须建立起与真并发相匹配的语义体系,让语义定义与硬件执行逻辑、内存管理机制形成闭环,同时降低开发者的并发编程心智负担。 开发范式的深度转变是Python并发模型重构的最终落脚点,GIL的移除让开发者必须从传统的“规避并发冲突”的防御性编程思维,转向“主动设计并发效率”的建设性思维,这种范式转变并非要求所有开发者成为底层并发机制专家 ,而是建立基于任务特性的并发设计直觉,让并发设计成为业务优化的自然延伸。

    16510编辑于 2026-01-23
  • 来自专栏后端技术漫谈

    Java并发知识点快速复习手册(上)

    面试知识点复习手册 全复习手册文章导航 点击公众号下方技术推文——面试冲刺 已发布知识点复习手册 Java基础知识点面试手册(上) Java基础知识点面试手册(下) Java容器(List、Set 、Map)知识点快速复习手册(上) Java容器(List、Set、Map)知识点快速复习手册(中) Java容器(List、Set、Map)知识点快速复习手册(下) Redis基础知识点快速复习手册 Lock 有ReentrantLock和ReentrantReadWriteLock,后者分为读锁和写锁,读锁允许并发访问共享资源。 7 8 9 0 1 2 3 4 5 6 7 8 9 ReentrantLock 是 java.util.concurrent(J.U.C)包中的锁,相比于 synchronized,它多了以下高级功能 (一小时以内) 京东品类商品监控:用户订阅特定品类后,该类降价幅度大于7折的【自营商品】会被选出并发送邮件提醒用户。

    49440发布于 2019-08-07
  • 来自专栏蛮三刀的后端开发专栏

    Java并发知识点快速复习手册(下)

    6. 2、对于Atomic的出现,是通过原子操作指令+Lock-Free完成,从而实现非阻塞式的并发问题。 多用并发集合少用同步集合。 使用本地变量ThreadLocal和不可变类来保证线程安全。 补充经典并发集合和同步集合参考 https://www.cnblogs.com/suneryong/p/6726413.html 不管是同步集合还是并发集合他们都支持线程安全,他们之间主要的区别体现在性能和可扩展性 造成如此慢的主要原因是锁, 同步集合会把整个Map或List锁起来,而并发集合不会。并发集合实现线程安全是通过使用先进的和成熟的技术像锁剥离。

    67730发布于 2019-03-26
  • 来自专栏后端技术漫谈

    Java并发知识点快速复习手册(下)

    面试知识点复习手册 全复习手册文章导航 点击公众号下方技术推文——面试冲刺 已发布知识点复习手册 Java基础知识点面试手册(上) Java基础知识点面试手册(下) Java容器(List、Set 、Map)知识点快速复习手册(上) Java容器(List、Set、Map)知识点快速复习手册(中) Java容器(List、Set、Map)知识点快速复习手册(下) Redis基础知识点快速复习手册 (上) Redis基础知识点快速复习手册(下) Java并发知识点快速复习手册(上) 双非硕士的春招秋招经验总结——对校招,复习以及面试心态的理解 参考 本文内容参考自CyC2018的Github 6. 造成如此慢的主要原因是锁, 同步集合会把整个Map或List锁起来,而并发集合不会。并发集合实现线程安全是通过使用先进的和成熟的技术像锁剥离。

    59610发布于 2019-08-07
  • 来自专栏蛮三刀的后端开发专栏

    Java并发知识点快速复习手册(上)

    Lock 有ReentrantLock和ReentrantReadWriteLock,后者分为读锁和写锁,读锁允许并发访问共享资源。 executorService.execute(() -> lockExample.func()); executorService.execute(() -> lockExample.func()); } 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 ReentrantLock 是 java.util.concurrent(J.U.C)包中的锁,相比于 synchronized,它多了以下高级功能: https://segmentfault.com/a/1190000014595928 java.util.concurrent(J.U.C)大大提高了并发性能,AQS 被认为是 J.U.C 的核心。 ArrayBlockingQueue, LinkedBlockingQueue, ConcurrentLinkedQueue 都是线程安全的,不然叫什么并发类呢 ArrayBlockingQueue

    63620发布于 2019-03-26
  • 来自专栏Web前端

    📝  《React性能优化完全手册:从useMemo到并发模式》

    ⚡️ 突破性能瓶颈:理解并发模式核心React 18的并发模式(Concurrent Mode)不是魔法,而是通过可中断渲染与优先级调度实现流畅交互:传统渲染 并发模式渲染 同步阻塞主线程 分片执行可中断 高优先级任务需排队 紧急交互(如输入)优先响应复杂更新导致界面卡顿通过时间切片保持帧率稳定 // 启用并发模式(React 18+)import { createRoot ├─ 是 → 采用并发模式+时间切片 └─ 否 → 是否需要跨组件状态共享? 从记忆化Hooks到并发模式,从工程化监控到编码规范,我们已覆盖React优化的完整路径。  深度连接: 点击 「头像」→「+关注」 每周解锁: 一线架构实录 | 故障排查手册 | 效能提升秘籍

    1.3K20编辑于 2025-04-28
  • 来自专栏信数据得永生

    Python 机器人学习手册6~10

    光束是 6 厘米宽,相距 80 厘米。 GP2D12 红外传感器的距离公式如下: 范围 = (6,787 / (Volt - 3)) - 4 此处,电压是来自电压引脚的 ADC 的模拟电压值。 MPU 6050 类中的getMotion6()函数负责从传感器读取新值。 这些启动文件一次启动多个节点,并发布数据,例如原始深度,RGB 和 IR 图像以及点云。 第 6 章,执行器和传感器与机器人控制器的接口 开关电路,用于控制机器人中电机的速度。 可以检测车轮旋转速度和方向的传感器。

    4.2K20编辑于 2023-04-27
领券