- 1 简介本文举例说明同步与超时控制多个任务的典型方法Golang 的并发核心是 goroutine + channel,再辅以 sync 和 context 包。Go 的通道 + select 模型让超时机制天然优雅。若你关注 性能、资源利用率、高并发 → ✅ Golang 更优推荐:errgroup.WithContext(现代 Go 的标准方案)若你关注 异步 I/O + 简洁开发 →... 1 简介本文举例说明同步与超时控制多个任务的典型方法Golang 的并发核心是 goroutine + channel,再辅以 sync 和 context 包。Go 的通道 + select 模型让超时机制天然优雅。若你关注 性能、资源利用率、高并发 → ✅ Golang 更优推荐:errgroup.WithContext(现代 Go 的标准方案)若你关注 异步 I/O + 简洁开发 →...
- Android杀死选中的进程释放进程占用的空间在Android开发中,管理和优化应用的性能是一个重要的课题。特别是在资源管理方面,如何有效地管理进程,确保应用在运行时能够合理利用系统资源,是开发者需要关注的问题之一。本文将介绍如何在Android中杀死选中的进程,从而释放进程占用的空间,提高应用的运行效率。1. 进程管理的重要性Android系统为了保证用户体验,会根据当前系统的资源情况自动... Android杀死选中的进程释放进程占用的空间在Android开发中,管理和优化应用的性能是一个重要的课题。特别是在资源管理方面,如何有效地管理进程,确保应用在运行时能够合理利用系统资源,是开发者需要关注的问题之一。本文将介绍如何在Android中杀死选中的进程,从而释放进程占用的空间,提高应用的运行效率。1. 进程管理的重要性Android系统为了保证用户体验,会根据当前系统的资源情况自动...
- 1 简介Go 调度器是一个在用户态实现的、基于 G-P-M 模型 的自适应抢占式并发调度系统,让开发者几乎不用关心线程、锁、信号量,而只需专注于任务逻辑。配合通道可以高效实现并发任务。 2 示例 演示抢占调度与主动让出 func cpuIntensive(id int) { for i := 0; i < 10; i++ { fmt.Printf(... 1 简介Go 调度器是一个在用户态实现的、基于 G-P-M 模型 的自适应抢占式并发调度系统,让开发者几乎不用关心线程、锁、信号量,而只需专注于任务逻辑。配合通道可以高效实现并发任务。 2 示例 演示抢占调度与主动让出 func cpuIntensive(id int) { for i := 0; i < 10; i++ { fmt.Printf(...
- 在医疗设备控制系统的开发过程中,我们面临一个经典的技术挑战:如何在保持用户界面流畅响应的同时,可靠地处理设备控制的长时间操作。本文将通过一个医疗床控制系统的实际案例,分享我们在同步与异步通信架构设计上的解决方案。 问题场景我们的医疗床控制系统采用主从架构:Host(主控端)与EPC(设备控制单元)通过双端口通信:Command端口:用于发送控制命令和接收立即响应Event端口:用于接收异步的... 在医疗设备控制系统的开发过程中,我们面临一个经典的技术挑战:如何在保持用户界面流畅响应的同时,可靠地处理设备控制的长时间操作。本文将通过一个医疗床控制系统的实际案例,分享我们在同步与异步通信架构设计上的解决方案。 问题场景我们的医疗床控制系统采用主从架构:Host(主控端)与EPC(设备控制单元)通过双端口通信:Command端口:用于发送控制命令和接收立即响应Event端口:用于接收异步的...
- 1 简介运行时有多种同步机制。它们在语义不同,特别是在它们是否与goroutine调度器或操作系统调度器进行交互。最简单的是 “mutex”,它是通过 "lock "和 "unlock "来操作的。unlock来操作。这应该被用来保护短期内的共享结构时间。在mutex上的阻塞直接阻塞M,而不与Go调度程序交互。调度器(Scheduler)是 Go 能在高并发、高性能、低复杂度下运行的核心原... 1 简介运行时有多种同步机制。它们在语义不同,特别是在它们是否与goroutine调度器或操作系统调度器进行交互。最简单的是 “mutex”,它是通过 "lock "和 "unlock "来操作的。unlock来操作。这应该被用来保护短期内的共享结构时间。在mutex上的阻塞直接阻塞M,而不与Go调度程序交互。调度器(Scheduler)是 Go 能在高并发、高性能、低复杂度下运行的核心原...
- 1. const 基础概念const 关键字用于定义不可修改的常量,是C++中确保数据只读性和程序安全性的核心机制。它可以应用于变量、指针、函数参数、返回值、成员函数等多种场景,深刻影响代码的正确性和性能。 1.1 本质与编译期处理const变量在编译时会被编译器严格检查,任何修改尝试都会导致编译错误。与C语言不同,C++中的const变量(尤其是全局const)通常不会分配内存,而是直接... 1. const 基础概念const 关键字用于定义不可修改的常量,是C++中确保数据只读性和程序安全性的核心机制。它可以应用于变量、指针、函数参数、返回值、成员函数等多种场景,深刻影响代码的正确性和性能。 1.1 本质与编译期处理const变量在编译时会被编译器严格检查,任何修改尝试都会导致编译错误。与C语言不同,C++中的const变量(尤其是全局const)通常不会分配内存,而是直接...
- 1 简介Go 内置调度器的设计基于 M:N 模型(多对多模型),该模型是操作系统调度领域中的经典思想之一。Go 的调度器将用户级的 Goroutine 映射到操作系统的线程(OS线程)上,采用了 M:N 调度模型,这意味着多个 Goroutine 会在少数线程上执行。具体来说,Go 使用了一个叫做 G-M-P(Goroutine、Machine、Processor)的用户态协程调度结构来管... 1 简介Go 内置调度器的设计基于 M:N 模型(多对多模型),该模型是操作系统调度领域中的经典思想之一。Go 的调度器将用户级的 Goroutine 映射到操作系统的线程(OS线程)上,采用了 M:N 调度模型,这意味着多个 Goroutine 会在少数线程上执行。具体来说,Go 使用了一个叫做 G-M-P(Goroutine、Machine、Processor)的用户态协程调度结构来管...
- 在 MindStudio Insight 的 Timeline 界面中,CANN 层使用 Thread 而 Ascend Hardware 层使用 Stream 来组织任务,这反映了两个层级在昇腾异构计算架构中所处的不同位置和承担的不同职责 。CANN 是 Compute Architecture for Neural Networks 的缩写,它是昇腾AI处理器的计算架构,其软件栈运行在主... 在 MindStudio Insight 的 Timeline 界面中,CANN 层使用 Thread 而 Ascend Hardware 层使用 Stream 来组织任务,这反映了两个层级在昇腾异构计算架构中所处的不同位置和承担的不同职责 。CANN 是 Compute Architecture for Neural Networks 的缩写,它是昇腾AI处理器的计算架构,其软件栈运行在主...
- 从公平到智能:openEuler内核调度器的设计之道 从公平到智能:openEuler内核调度器的设计之道
- 在多线程编程中,数据竞争(Data Race)是最常见且最难调试的问题之一。当多个线程并发访问同一内存位置,且至少有一个是写操作时,如果没有正确的同步,就会导致未定义行为。这种bug往往难以复现,却在生产环境中造成灾难性后果。 什么是数据竞争? 正式定义数据竞争发生在以下条件同时满足时:两个或更多线程并发访问同一内存位置至少有一个访问是写操作没有使用同步机制来排序这些访问 一个简单的数据竞争... 在多线程编程中,数据竞争(Data Race)是最常见且最难调试的问题之一。当多个线程并发访问同一内存位置,且至少有一个是写操作时,如果没有正确的同步,就会导致未定义行为。这种bug往往难以复现,却在生产环境中造成灾难性后果。 什么是数据竞争? 正式定义数据竞争发生在以下条件同时满足时:两个或更多线程并发访问同一内存位置至少有一个访问是写操作没有使用同步机制来排序这些访问 一个简单的数据竞争...
- 定时任务组件Quartz什么是QuartzQuartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,完全由Java开发,可以用来执行定时任务,类似于java.util.Timer。但是相较于Timer, Quartz增加了很多功能:持久性作业 - 就是保持调度定时的状态;作业管理 - 对调度作业进行有效的管理;大部分公司都会用到定时任务这个功能。拿火车票... 定时任务组件Quartz什么是QuartzQuartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,完全由Java开发,可以用来执行定时任务,类似于java.util.Timer。但是相较于Timer, Quartz增加了很多功能:持久性作业 - 就是保持调度定时的状态;作业管理 - 对调度作业进行有效的管理;大部分公司都会用到定时任务这个功能。拿火车票...
- openEuler的调度魔法:进程管理如何做到高效又聪明? openEuler的调度魔法:进程管理如何做到高效又聪明?
- 内存管理这点事:openEuler内核里的“精细活” 内存管理这点事:openEuler内核里的“精细活”
- 开篇语哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。 我是一名后端开发爱好者,工作日常接触到最多的就是Java语言啦,所以我都尽量抽业余时间把自己所学到所会的,通过文章的形式进行输出,... 开篇语哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。 我是一名后端开发爱好者,工作日常接触到最多的就是Java语言啦,所以我都尽量抽业余时间把自己所学到所会的,通过文章的形式进行输出,...
- 开篇语哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。 我是一名后端开发爱好者,工作日常接触到最多的就是Java语言啦,所以我都尽量抽业余时间把自己所学到所会的,通过文章的形式进行输出,... 开篇语哈喽,各位小伙伴们,你们好呀,我是喵手。运营社区:C站/掘金/腾讯云/阿里云/华为云/51CTO;欢迎大家常来逛逛 今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。 我是一名后端开发爱好者,工作日常接触到最多的就是Java语言啦,所以我都尽量抽业余时间把自己所学到所会的,通过文章的形式进行输出,...
上滑加载中
推荐直播
-
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步轻松管理成本,帮助提升日常管理效率!
回顾中
热门标签