- 前言线程同步机制是多线程下解决线程对共享资源竞争的主要方式,华为仓颉语言提供了三种常见的同步机制用来保证线程同步安全,分别是原子操作,互斥锁和条件变量。本篇文章详细介绍主要仓颉语言解决同步机制的方法,建议点赞收藏!同步机制原子操作和 java 一样,仓颉也支持使用原子操作(Atomic)用来确保多线程下的数据访问安全。主要是提供整数类型,布尔类型和引用类型三种方式。以整数类型为例,原子变量 ... 前言线程同步机制是多线程下解决线程对共享资源竞争的主要方式,华为仓颉语言提供了三种常见的同步机制用来保证线程同步安全,分别是原子操作,互斥锁和条件变量。本篇文章详细介绍主要仓颉语言解决同步机制的方法,建议点赞收藏!同步机制原子操作和 java 一样,仓颉也支持使用原子操作(Atomic)用来确保多线程下的数据访问安全。主要是提供整数类型,布尔类型和引用类型三种方式。以整数类型为例,原子变量 ...
- 本文详细解析了OkHttp3的源码及其实现机制,适合初学者学习。文章从Request与Response结构、HTTPS握手过程、响应码含义、Socket概念到责任链模式的应用逐一讲解。重点分析了OkHttp的工作流程:通过Call对象的enqueue()或execute()方法发起请求,核心是getResponseWithInterceptorChain(),利用拦截器链处理请求,包括用户自定义拦 本文详细解析了OkHttp3的源码及其实现机制,适合初学者学习。文章从Request与Response结构、HTTPS握手过程、响应码含义、Socket概念到责任链模式的应用逐一讲解。重点分析了OkHttp的工作流程:通过Call对象的enqueue()或execute()方法发起请求,核心是getResponseWithInterceptorChain(),利用拦截器链处理请求,包括用户自定义拦
- 一、PV操作基本概念 (一)信号量 (二)P操作 (三)V操作 二、PV操作的意义 三、C++中实现PV操作的方法 (一)使用信号量实现PV操作 代码解释: (二)使用互斥量和条件变量实现PV操作 代码解释: 四、PV操作的经典问题及解决方案 (一)生产者 - 消费者问题 解决方案: 代码解释: (二)读者 - 写者问题 解决方案: 代码解释: 五、总结 一、PV操作基本概念PV操作是操作... 一、PV操作基本概念 (一)信号量 (二)P操作 (三)V操作 二、PV操作的意义 三、C++中实现PV操作的方法 (一)使用信号量实现PV操作 代码解释: (二)使用互斥量和条件变量实现PV操作 代码解释: 四、PV操作的经典问题及解决方案 (一)生产者 - 消费者问题 解决方案: 代码解释: (二)读者 - 写者问题 解决方案: 代码解释: 五、总结 一、PV操作基本概念PV操作是操作...
- 引子Netty作为异步事件驱动的网络框架,凭借出色的性能和设计,已成为高并发通信领域的标杆。它不仅简化了 Java NIO 编程的复杂性,还能轻松支持数万并发连接,被 Dubbo、Elasticsearch 等众多知名项目采用。本文将探索如何结合 Spring Boot 3 与 Netty,打造高性能即时通讯系统。 前置科普在深入 Netty 之前,让我们先系统地了解 IO 模型的基础知识... 引子Netty作为异步事件驱动的网络框架,凭借出色的性能和设计,已成为高并发通信领域的标杆。它不仅简化了 Java NIO 编程的复杂性,还能轻松支持数万并发连接,被 Dubbo、Elasticsearch 等众多知名项目采用。本文将探索如何结合 Spring Boot 3 与 Netty,打造高性能即时通讯系统。 前置科普在深入 Netty 之前,让我们先系统地了解 IO 模型的基础知识...
- OHOS标准系统的SAMGR代码解读(v3.1)–2--samgr梁开祝 2022.09.07OHOS标准系统的samgr组件位于3.1分支代码的//foundation/distributedschedule/samgr/目录下,在最新的master分支代码则是//foundation/systemabilitymgr/samgr/目录下。 1. samgr 组件的全景图先看samgr... OHOS标准系统的SAMGR代码解读(v3.1)–2--samgr梁开祝 2022.09.07OHOS标准系统的samgr组件位于3.1分支代码的//foundation/distributedschedule/samgr/目录下,在最新的master分支代码则是//foundation/systemabilitymgr/samgr/目录下。 1. samgr 组件的全景图先看samgr...
- OHOS标准系统的SAMGR代码解读(v3.1)–1--safwk梁开祝 2022.09.04OHOS标准系统的safwk组件位于3.1分支代码的//foundation/distributedschedule/safwk/目录下,在最新的master分支代码则是//foundation/systemabilitymgr/safwk/目录下。通过tree命令将目录树结构打印出来,把测试相... OHOS标准系统的SAMGR代码解读(v3.1)–1--safwk梁开祝 2022.09.04OHOS标准系统的safwk组件位于3.1分支代码的//foundation/distributedschedule/safwk/目录下,在最新的master分支代码则是//foundation/systemabilitymgr/safwk/目录下。通过tree命令将目录树结构打印出来,把测试相...
- OHOS标准系统的SAMGR代码解读(v3.1)–0--前言梁开祝 2022.09.02《OHOS的系统服务框架子系统(SAMGR)代码解读(v2.0)》系列文章详细分析了 OpenHarmony 的轻量系统和小型系统的系统服务框架 safwk_lite 和 samgr_lite 两个组件的实现细节。由于这个 v2.0 版本的内容还算是网络博文,在不少地方的行文表达还偏口语化、部分内容的组... OHOS标准系统的SAMGR代码解读(v3.1)–0--前言梁开祝 2022.09.02《OHOS的系统服务框架子系统(SAMGR)代码解读(v2.0)》系列文章详细分析了 OpenHarmony 的轻量系统和小型系统的系统服务框架 safwk_lite 和 samgr_lite 两个组件的实现细节。由于这个 v2.0 版本的内容还算是网络博文,在不少地方的行文表达还偏口语化、部分内容的组...
- OHOS标准系统的IPC和RPC代码解读–2--IPC全景图梁开祝 2022.09.25 1.IPC全景图直接阅读前文《1–概述》中提到的编译目标【10】(包含【11】)的源代码,将一些关键的类、类的继承关系和调用关系逐渐整理出来,如下图所示(该图仍在继续完善中)。上图可以简单分成以下几个部分:MessageParcel 和 Parcel:这是通过IPC传输的数据对象(sendData和r... OHOS标准系统的IPC和RPC代码解读–2--IPC全景图梁开祝 2022.09.25 1.IPC全景图直接阅读前文《1–概述》中提到的编译目标【10】(包含【11】)的源代码,将一些关键的类、类的继承关系和调用关系逐渐整理出来,如下图所示(该图仍在继续完善中)。上图可以简单分成以下几个部分:MessageParcel 和 Parcel:这是通过IPC传输的数据对象(sendData和r...
- OHOS标准系统的IPC和RPC代码解读–1--概述梁开祝 2022.09.24本想接着前文《OHOS标准系统的SAMGR代码解读》继续分析dmsfwk组件的实现细节,但发现涉及太多的IPC/RPC的内容了,如果对OHOS的IPC/RPC没有足够的理解,很难把dmsfwk组件理解透彻,因此我花了点时间,先整理了一下IPC/RPC相关的代码和部分流程,作为理解SAMGR相关组件的预备知识。I... OHOS标准系统的IPC和RPC代码解读–1--概述梁开祝 2022.09.24本想接着前文《OHOS标准系统的SAMGR代码解读》继续分析dmsfwk组件的实现细节,但发现涉及太多的IPC/RPC的内容了,如果对OHOS的IPC/RPC没有足够的理解,很难把dmsfwk组件理解透彻,因此我花了点时间,先整理了一下IPC/RPC相关的代码和部分流程,作为理解SAMGR相关组件的预备知识。I...
- 以下是对工厂方法模式(Factory Method Pattern)的深度解析,涵盖设计原理、多语言实现及架构优化策略:一、引言工厂方法模式是创建型设计模式的经典实现,通过将对象实例化延迟到子类,解决了简单工厂的扩展性问题。其核心价值在于:解耦:分离对象创建与使用逻辑扩展性:新增产品类型无需修改已有代码符合OCP原则:对扩展开放,对修改关闭二、技术背景模式对比模式 核心... 以下是对工厂方法模式(Factory Method Pattern)的深度解析,涵盖设计原理、多语言实现及架构优化策略:一、引言工厂方法模式是创建型设计模式的经典实现,通过将对象实例化延迟到子类,解决了简单工厂的扩展性问题。其核心价值在于:解耦:分离对象创建与使用逻辑扩展性:新增产品类型无需修改已有代码符合OCP原则:对扩展开放,对修改关闭二、技术背景模式对比模式 核心...
- 前言众所周知在进行网络连接的时候,建立套接字连接是一个非常消耗性能的事情,特别是在分布式的情况下,用线程池去保持多个客户端连接,是一种非常消耗线程的行为。那么该通过什么技术去解决上述的问题呢,那么就不得不提一个网络连接的利器——Netty。 正文NettyNetty是一个NIO客户端服务器框架:它可快速轻松地开发网络应用程序,例如协议服务器和客户端。它极大地简化和简化了网络编程,例如TC... 前言众所周知在进行网络连接的时候,建立套接字连接是一个非常消耗性能的事情,特别是在分布式的情况下,用线程池去保持多个客户端连接,是一种非常消耗线程的行为。那么该通过什么技术去解决上述的问题呢,那么就不得不提一个网络连接的利器——Netty。 正文NettyNetty是一个NIO客户端服务器框架:它可快速轻松地开发网络应用程序,例如协议服务器和客户端。它极大地简化和简化了网络编程,例如TC...
- 以下是关于异步与并行LINQ(PLINQ)的全面解析,涵盖技术原理、应用场景及最佳实践:一、引言在.NET生态中,PLINQ(Parallel LINQ)和异步LINQ是提升数据处理性能的核心技术。PLINQ通过多核并行化加速计算密集型任务,而异步LINQ(如IAsyncEnumerable)则优化I/O密集型操作的资源利用率。两者结合可显著提升现代应用的吞吐量和响应速度。二、技术背景核心概... 以下是关于异步与并行LINQ(PLINQ)的全面解析,涵盖技术原理、应用场景及最佳实践:一、引言在.NET生态中,PLINQ(Parallel LINQ)和异步LINQ是提升数据处理性能的核心技术。PLINQ通过多核并行化加速计算密集型任务,而异步LINQ(如IAsyncEnumerable)则优化I/O密集型操作的资源利用率。两者结合可显著提升现代应用的吞吐量和响应速度。二、技术背景核心概...
- Handler 是 Android 中实现线程间通信的重要机制,可传递任意两线程数据。常用场景包括子线程向主线程(UI 线程)传递结果,以及主线程向子线程发送消息。其核心涉及四个类:Handler(发送/接收消息)、Message(消息载体)、MessageQueue(消息队列)和 Looper(消息循环泵)。 Handler 是 Android 中实现线程间通信的重要机制,可传递任意两线程数据。常用场景包括子线程向主线程(UI 线程)传递结果,以及主线程向子线程发送消息。其核心涉及四个类:Handler(发送/接收消息)、Message(消息载体)、MessageQueue(消息队列)和 Looper(消息循环泵)。
- 本文主要讲解多线程相关知识,分为两部分。第一部分涵盖多线程概念(并发与并行、进程与线程)、Java程序运行原理(JVM启动多线程特性)、实现多线程的两种方式(继承Thread类与实现Runnable接口)及其区别。第二部分涉及线程同步(同步锁的应用场景与代码示例)及线程间通信(wait()与notify()方法的使用)。 本文主要讲解多线程相关知识,分为两部分。第一部分涵盖多线程概念(并发与并行、进程与线程)、Java程序运行原理(JVM启动多线程特性)、实现多线程的两种方式(继承Thread类与实现Runnable接口)及其区别。第二部分涉及线程同步(同步锁的应用场景与代码示例)及线程间通信(wait()与notify()方法的使用)。
- 引言有加锁自然就有解锁,本篇则将围绕锁的释放锁Lua脚本进行深入剖析,另外,还将对阻塞和非阻塞两张方式分别如何获取锁进行比较。 可重入锁之释放锁这里我们依然是按照步骤来看看释放锁是如何执行的。 1.首先从入口方法开始:public void unlock() { try { get(unlockAsync(Thread.currentThread().getId()))... 引言有加锁自然就有解锁,本篇则将围绕锁的释放锁Lua脚本进行深入剖析,另外,还将对阻塞和非阻塞两张方式分别如何获取锁进行比较。 可重入锁之释放锁这里我们依然是按照步骤来看看释放锁是如何执行的。 1.首先从入口方法开始:public void unlock() { try { get(unlockAsync(Thread.currentThread().getId()))...
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签