多线程

马拉萨的春天7 天前
macos·ios·cocoa·多线程
iOS的多线程下数据安全和内存泄漏以及工具使用监测内存泄漏NSMutableArray 的所有读写操作(addObject:、removeObject:、indexOfObject: 等)本身都不是线程安全的。 要在多线程环境下安全使用,只有一条铁律:
RollingPin10 天前
ios·多线程·卡顿·ios面试·runloop·ios保活·ios八股文
iOS八股文之 RunLoopRunLoop 是包含事件监听、休眠唤醒、状态管理的复杂机制。先来5块钱的(先写5块,想到了再补 ( ̄▽ ̄)~* ):
RollingPin12 天前
ios·多线程·串行并行·gcd·ios面试·同步异步·nsoperation
iOS八股文之 多线程主要有 4 种多线程方案,从底层到高层封装程度递增:但实际开发中以 GCD 和 NSOperationQueue 为主:
切糕师学AI13 天前
c++·多线程·并发编程·阻塞等待
【多线程】阻塞等待(Blocking Wait)(以C++为例)本文来自于我关于多线程的系列文章。欢迎阅读、点评与交流 1.【多线程】互斥锁(Mutex)是什么? 2.【多线程】临界区(Critical Section)是什么? 3.【多线程】计算机领域中的各种锁 4.【多线程】信号量(Semaphore)是什么? 5.【多线程】信号量(Semaphore)常见的应用场景 6.【多线程】条件变量(Condition Variable)是什么? 7.【多线程】监视器(Monitor)是什么? 8.【多线程】什么是原子操作(Atomic Operation)? 9.【多线
JAVA学习通14 天前
java·开发语言·多线程
基本功 | 一文讲清多线程和多线程同步多线程编程是现代软件开发中的一项关键技术,在多线程编程中,开发者可以将复杂的任务分解为多个独立的线程,使其并行执行,从而充分利用多核处理器的优势。然而,多线程编程也带来了挑战,例如线程同步、死锁和竞态条件等问题。本篇文章将深入探讨多线程编程的基本概念(原子操作、CAS、Lock-free、内存屏障、伪共享、乱序执行等)、常见模式和最佳实践。通过具体的代码示例,希望能够帮助大家掌握多线程编程的核心技术,并在实际开发中应用这些知识,提升软件的性能和稳定性。
huohaiyu18 天前
java·开发语言·多线程·哈希
Hashtable,HashMap,ConcurrentHashMap之间的区别目录一、线程安全性二、性能三、空值支持四、继承与实现关系五、使用场景与总结表方法并未添加锁
摇滚侠21 天前
java·spring boot·多线程
Spring Boot中使用线程池来优化程序执行的效率!笔记018.案例-使用线程池优化处理百万级数据
切糕师学AI23 天前
多线程·并发编程
【多线程】无锁数据结构(Lock-Free Data Structures)是什么?本文来自于我关于多线程系列文章。欢迎阅读、点评与交流 1.【多线程】互斥锁(Mutex)是什么? 2.【多线程】临界区(Critical Section)是什么? 3.【多线程】计算机领域中的各种锁 4.【多线程】信号量(Semaphore)是什么? 5.【多线程】信号量(Semaphore)常见的应用场景 6.【多线程】条件变量(Condition Variable)是什么? 7.【多线程】监视器(Monitor)是什么? 8.【多线程】什么是原子操作(Atomic Operation)? 9.【多线程
Nᴏsᴛᴀʟɢɪᴀ念1 个月前
java·开发语言·jvm·多线程
多线程奇幻漂流:从单核到多核质变(一)目录一、线程和进程的区别二、线程的五大特性2.1. 调度相关2.2. 状态2.3. 优先级2.4. 记账信息
维度攻城狮1 个月前
开发语言·c++·性能优化·多线程·线程同步
C++中的多线程编程及线程同步在当今计算领域,无论是追求极致响应速度的桌面应用、处理海量并发请求的服务器后端,还是需要实时处理数据的科学计算与游戏引擎,多线程技术已然成为提升软件性能与用户体验的核心手段。它通过“分而治之”的策略,将应用程序的任务负载分配到多个执行流中,从而最大限度地挖掘现代多核处理器的并行计算潜力,对于提高软件的流畅度、响应能力和整体执行效率具有不可替代的重要作用。
奔跑吧邓邓子1 个月前
c++·实战·多线程·c++11·线程库
【C++实战(53)】C++11线程库:开启多线程编程新世界在 C++11 中,std::thread类是线程库的核心,用于创建和管理线程。要使用std::thread,首先需要包含<thread>头文件。
Brookty1 个月前
java·开发语言·学习·多线程·javaee
【Java学习】定时器Timer(源码详解)目录一、构造方法1.非静态成员就地初始化1.1TaskQueue类1.1.1构造(在Timer成员初始化时)
z晨晨1 个月前
java·redis·spring·面试·多线程·互联网大厂
互联网大厂Java求职面试场景在某互联网大厂的面试室,面试官正准备对一位名叫谢飞机的程序员进行Java相关技术的面试。谢飞机以其幽默风趣而闻名,并且有些“水货”特质。这场面试将围绕Java核心知识展开,并逐步深入到更复杂的技术领域。
恋恋西风1 个月前
pyqt·多线程·异步
PyQt python 异步任务,多线程,进阶版https://blog.csdn.net/q610098308/article/details/145175625
poemyang1 个月前
多线程·并发编程·java并发编程
揭秘JUC:volatile与CAS,并发编程的两大基石JUC(java.util.concurrent)并发包,作为Java语言并发编程的利器,由并发编程领域的泰斗道格·利(Doug Lea)精心打造。它提供了一系列高效、线程安全的工具类、接口及原子类,极大地简化了并发编程的开发流程与管理复杂度。
yics.1 个月前
java·单例模式·多线程·线程安全
多线程——单例模式目录1.设计模式 - 单例模式2.饿汉模式3.懒汉模式3.1 初始版-非线程安全3.2 synchronized 修饰
poemyang1 个月前
多线程·并发编程·java并发编程
一把锁的两种承诺:synchronized如何同时保证互斥与内存可见性?在多线程环境中,‌临界区(Critical Section)是指一次只能由一个线程执行的代码段,这些代码通常涉及对共享资源(如变量、数据结构、文件或数据库连接)的访问或修改。临界区的存在是为了解决并发控制中的两大核心问题。 ‌ 1)数据不一致性‌:如果多个线程同时对共享资源进行写操作,可能会破坏数据的完整性,导致其状态与预期不符。 ‌ 2)竞态条件:程序的执行结果依赖于线程调度和执行的偶然顺序,这使得程序行为变得不可预测,难以调试。
青草地溪水旁1 个月前
linux·多线程·pthread
pthread_mutex_lock函数深度解析pthread_mutex_lock是POSIX线程库中用于实现线程同步的核心函数,它通过对互斥锁的加锁操作来确保多个线程对共享资源的安全访问。本文从互斥锁的历史背景和发展脉络入手,详细解析了pthread_mutex_lock函数的设计理念、实现机制和使用场景。通过生产者-消费者模型、线程安全数据结构和读写锁三个典型实例,深入探讨了该函数在实际应用中的具体实现方式。文章提供了完整的代码示例、Makefile配置以及Mermaid流程图和时序图,详细说明了编译运行方法和结果解读。最后,总结了pthread
荣淘淘2 个月前
java·jvm·spring·面试·springboot·线程池·多线程
互联网大厂求职面试记:谢飞机的搞笑答辩面试官:请你简单讲一下JVM的内存结构。谢飞机:哎,这个,JVM有堆和栈吧,还有那个方法区,具体的好像还有个本地方法栈什么的,记不太清了。
牟同學2 个月前
linux·网络编程·c·多线程
从竞态到原子:pread/pwrite 如何重塑高效文件 I/O?在日常的文件 I/O 编程中,我们最熟悉的莫过于 read() 和 write() 系统调用。它们是处理文件操作的基石。然而,在多线程或需要精确控制文件偏移量的场景下,这两个基础调用可能会显得笨拙甚至导致问题。这就是 Linux 和 Unix 系统提供 pread() 和 pwrite() 的原因所在。