- 在计算机的世界里,进程就像一个个独立的“小王国”,它们拥有自己独立的内存空间和资源。然而,一个复杂的应用往往需要多个进程协同工作,比如你的音乐播放器进程需要和系统音量控制进程通信,浏览器的一个标签页崩溃了也不能影响其他标签页。那么,这些“小王国”之间如何安全、高效地传递信息呢?答案就是进程间通信。 什么是进程间通信?进程间通信是指两个或多个进程之间传输数据或信号的技术。由于进程的独立性,操作... 在计算机的世界里,进程就像一个个独立的“小王国”,它们拥有自己独立的内存空间和资源。然而,一个复杂的应用往往需要多个进程协同工作,比如你的音乐播放器进程需要和系统音量控制进程通信,浏览器的一个标签页崩溃了也不能影响其他标签页。那么,这些“小王国”之间如何安全、高效地传递信息呢?答案就是进程间通信。 什么是进程间通信?进程间通信是指两个或多个进程之间传输数据或信号的技术。由于进程的独立性,操作...
- QingTian Enclave时间漂移修复 QingTian Enclave时间漂移修复
- 飞得更稳、反应更快:用 openEuler 优化无人机自动驾驶系统的实战经验 飞得更稳、反应更快:用 openEuler 优化无人机自动驾驶系统的实战经验
- 文章围绕C++的内存管理、编译优化、多线程编程、跨平台适配及模块化设计五大核心特性展开,结合LLM在云端、边缘设备、车载等多场景的部署需求,详解自定义内存池、硬件指令集适配、线程池调度、代码裁剪等实操优化方案。 文章围绕C++的内存管理、编译优化、多线程编程、跨平台适配及模块化设计五大核心特性展开,结合LLM在云端、边缘设备、车载等多场景的部署需求,详解自定义内存池、硬件指令集适配、线程池调度、代码裁剪等实操优化方案。
- 在 Java 8 中,线程池(Thread Pool)是一种管理线程资源的机制,能够有效地控制并发执行的线程数量,减少线程创建和销毁的开销,提高系统的性能。Java 提供了 java.util.concurrent 包,其中包含了一些用于创建和管理线程池的类和接口。本篇文章将详细介绍如何在 Java 8 中创建和使用线程池。 一、线程池的基本概念 1. 线程池的工作原理线程池的基本原理是预先... 在 Java 8 中,线程池(Thread Pool)是一种管理线程资源的机制,能够有效地控制并发执行的线程数量,减少线程创建和销毁的开销,提高系统的性能。Java 提供了 java.util.concurrent 包,其中包含了一些用于创建和管理线程池的类和接口。本篇文章将详细介绍如何在 Java 8 中创建和使用线程池。 一、线程池的基本概念 1. 线程池的工作原理线程池的基本原理是预先...
- 1、引言MySQL凭借其卓越的高并发事务处理能力和丰富的生态系统,不仅在互联网行业广泛应用,也持续向传统行业渗透。然而在OLAP场景下,MySQL面临显著挑战:其单线程执行模型在处理复杂大查询时存在天然瓶颈,单个SQL语句最多只能利用一个CPU核心,无法充分发挥现代多核服务器的硬件潜力。随着数据量增长,这一问题日益凸显——全表扫描类查询耗时随数据规模线性增加。为突破这一限制,MySQL社区在... 1、引言MySQL凭借其卓越的高并发事务处理能力和丰富的生态系统,不仅在互联网行业广泛应用,也持续向传统行业渗透。然而在OLAP场景下,MySQL面临显著挑战:其单线程执行模型在处理复杂大查询时存在天然瓶颈,单个SQL语句最多只能利用一个CPU核心,无法充分发挥现代多核服务器的硬件潜力。随着数据量增长,这一问题日益凸显——全表扫描类查询耗时随数据规模线性增加。为突破这一限制,MySQL社区在...
- 概述本文档描述如何在 Ubuntu 主机上部署 code-server(即“网页版 VS Code”),并通过 autossh 将服务反向隧道到跳板机、使用 Nginx 反向代理域名访问、以及使用 certbot 配置 HTTPS。适合在多设备间共享同一开发环境、并解决个人主机动态公网 IP 的访问问题。本文要点:使用 code-server 提供浏览器可访问的开发环境使用 autossh... 概述本文档描述如何在 Ubuntu 主机上部署 code-server(即“网页版 VS Code”),并通过 autossh 将服务反向隧道到跳板机、使用 Nginx 反向代理域名访问、以及使用 certbot 配置 HTTPS。适合在多设备间共享同一开发环境、并解决个人主机动态公网 IP 的访问问题。本文要点:使用 code-server 提供浏览器可访问的开发环境使用 autossh...
- 本文介绍了Reactor模型的三种实现方案及其优化策略。单线程模型易受业务逻辑阻塞,工作者线程池模型通过分离I/O和非I/O操作提升性能,主从多线程模型进一步采用多线程设计处理连接与通信。文章还探讨了Reactor与过滤器链、异步编程的结合应用,通过伪代码展示了主从多线程模型的异步处理流程。这些优化方案能有效提升系统吞吐量和响应速度,适用于高并发场景。 本文介绍了Reactor模型的三种实现方案及其优化策略。单线程模型易受业务逻辑阻塞,工作者线程池模型通过分离I/O和非I/O操作提升性能,主从多线程模型进一步采用多线程设计处理连接与通信。文章还探讨了Reactor与过滤器链、异步编程的结合应用,通过伪代码展示了主从多线程模型的异步处理流程。这些优化方案能有效提升系统吞吐量和响应速度,适用于高并发场景。
- 1. 为什么需要线程同步?当多个线程并发访问共享数据(内存、文件、网络连接等)时,如果不进行任何同步控制,可能会引发一系列问题,最典型的是:数据竞争:一个线程在读数据时,另一个线程在写数据,导致读到的数据是“脏的”、不完整的或逻辑错误的。破坏不变量:对象在修改过程中,其内部状态可能暂时是不一致的(例如,修改一个链表时)。如果另一个线程在此时访问该对象,会看到这个破碎的状态,导致未定义行为。... 1. 为什么需要线程同步?当多个线程并发访问共享数据(内存、文件、网络连接等)时,如果不进行任何同步控制,可能会引发一系列问题,最典型的是:数据竞争:一个线程在读数据时,另一个线程在写数据,导致读到的数据是“脏的”、不完整的或逻辑错误的。破坏不变量:对象在修改过程中,其内部状态可能暂时是不一致的(例如,修改一个链表时)。如果另一个线程在此时访问该对象,会看到这个破碎的状态,导致未定义行为。...
- 事件驱动是一种编程范式,通过异步事件控制程序流程,由事件源、事件、事件循环和事件处理器组成。Reactor模型解决了C10K问题,利用I/O多路复用机制,使单线程高效处理大量连接,克服了传统多线程模型的瓶颈,但存在编程复杂度高的局限。 事件驱动是一种编程范式,通过异步事件控制程序流程,由事件源、事件、事件循环和事件处理器组成。Reactor模型解决了C10K问题,利用I/O多路复用机制,使单线程高效处理大量连接,克服了传统多线程模型的瓶颈,但存在编程复杂度高的局限。
- 第一部分:什么是死锁?死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的一种互相等待的现象。若无外力干涉,这些线程都将无法向前推进。一个经典的死锁场景被称为 “哲学家就餐问题” :五位哲学家围坐一桌,每两人之间有一支筷子。哲学家要么思考,要么就餐。就餐时需要同时拿起左右两边的筷子。如果所有哲学家同时拿起左边的筷子,那么他们都会永远等待右边的筷子被释放,从而陷入死锁。 第二部分:死... 第一部分:什么是死锁?死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的一种互相等待的现象。若无外力干涉,这些线程都将无法向前推进。一个经典的死锁场景被称为 “哲学家就餐问题” :五位哲学家围坐一桌,每两人之间有一支筷子。哲学家要么思考,要么就餐。就餐时需要同时拿起左右两边的筷子。如果所有哲学家同时拿起左边的筷子,那么他们都会永远等待右边的筷子被释放,从而陷入死锁。 第二部分:死...
- 当AI遇上openEuler:一场“算力压榨”与系统优化的默契配合 当AI遇上openEuler:一场“算力压榨”与系统优化的默契配合
- 在Linux系统中,umount命令用于卸载已经挂载的文件系统。这个命令与mount命令成对使用,后者负责将文件系统挂载到指定的挂载点,而前者则负责将其卸载。卸载文件系统的操作是确保数据一致性和文件系统完整性的重要步骤,特别是在进行系统维护或磁盘管理时。本文将详细介绍umount命令的功能、使用方法以及常见的操作实例。 umount 命令的基本语法 基本语法umount [选项] <挂载点或... 在Linux系统中,umount命令用于卸载已经挂载的文件系统。这个命令与mount命令成对使用,后者负责将文件系统挂载到指定的挂载点,而前者则负责将其卸载。卸载文件系统的操作是确保数据一致性和文件系统完整性的重要步骤,特别是在进行系统维护或磁盘管理时。本文将详细介绍umount命令的功能、使用方法以及常见的操作实例。 umount 命令的基本语法 基本语法umount [选项] <挂载点或...
- I/O多路复用是一种高效的并发I/O模型,通过单线程监控多个文件描述符,避免了非阻塞I/O轮询的资源浪费。从select/poll到epoll的技术演进中,epoll采用红黑树管理和回调机制,实现了O(1)时间复杂度的事件检测,支持LT/ET两种触发模式。虽然仍属同步I/O,但结合事件循环+线程池的模式可显著提升系统吞吐量。该技术是现代高性能网络编程的核心基础。(149字) I/O多路复用是一种高效的并发I/O模型,通过单线程监控多个文件描述符,避免了非阻塞I/O轮询的资源浪费。从select/poll到epoll的技术演进中,epoll采用红黑树管理和回调机制,实现了O(1)时间复杂度的事件检测,支持LT/ET两种触发模式。虽然仍属同步I/O,但结合事件循环+线程池的模式可显著提升系统吞吐量。该技术是现代高性能网络编程的核心基础。(149字)
- 1. 网络I/O模型概述写Java网络程序的时候,你有没有遇到过这样的问题:几百个用户同时连接服务器,程序就开始卡顿,CPU飙升,内存不够用?这其实就是I/O模型选择不当造成的。不同的I/O模型就像不同的交通工具,有的适合短途,有的适合长途。选对了事半功倍,选错了就是灾难。 1.1 I/O模型的两个关键维度我们先搞清楚I/O模型是怎么分类的。其实就看两个方面:数据准备阶段:阻塞(Block... 1. 网络I/O模型概述写Java网络程序的时候,你有没有遇到过这样的问题:几百个用户同时连接服务器,程序就开始卡顿,CPU飙升,内存不够用?这其实就是I/O模型选择不当造成的。不同的I/O模型就像不同的交通工具,有的适合短途,有的适合长途。选对了事半功倍,选错了就是灾难。 1.1 I/O模型的两个关键维度我们先搞清楚I/O模型是怎么分类的。其实就看两个方面:数据准备阶段:阻塞(Block...
上滑加载中
推荐直播
-
HDC深度解读系列 - Serverless与MCP融合创新,构建AI应用全新智能中枢2025/08/20 周三 16:30-18:00
张昆鹏 HCDG北京核心组代表
HDC2025期间,华为云展示了Serverless与MCP融合创新的解决方案,本期访谈直播,由华为云开发者专家(HCDE)兼华为云开发者社区组织HCDG北京核心组代表张鹏先生主持,华为云PaaS服务产品部 Serverless总监Ewen为大家深度解读华为云Serverless与MCP如何融合构建AI应用全新智能中枢
回顾中 -
关于RISC-V生态发展的思考2025/09/02 周二 17:00-18:00
中国科学院计算技术研究所副所长包云岗教授
中科院包云岗老师将在本次直播中,探讨处理器生态的关键要素及其联系,分享过去几年推动RISC-V生态建设实践过程中的经验与教训。
回顾中 -
一键搞定华为云万级资源,3步轻松管理企业成本2025/09/09 周二 15:00-16:00
阿言 华为云交易产品经理
本直播重点介绍如何一键续费万级资源,3步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签