- 🎈通过Executors类创建线程池线程池的创建方式有很多种,可以通过Executors工具类创建多种模式的线程池,Executors工具类位于java.util.concurrent.locks包中,接下来解释其中的方法。首先将线程池的七个参数标在这里:corePoolSize:表示线程池中核心线程的数量;maximumPoolSize:表示线程池中最大线程数量;keepAliveTi... 🎈通过Executors类创建线程池线程池的创建方式有很多种,可以通过Executors工具类创建多种模式的线程池,Executors工具类位于java.util.concurrent.locks包中,接下来解释其中的方法。首先将线程池的七个参数标在这里:corePoolSize:表示线程池中核心线程的数量;maximumPoolSize:表示线程池中最大线程数量;keepAliveTi...
- 聊聊java中的线程 线程的实现方式 启动线程 join()方法 总结 聊聊java中的线程坚持原创,写好每一篇文章随着用户量的逐渐增多,请求越来越多,并发问题随之而来,线程的学习自然也成了重点内容,也是出去找工作不得不进行准备的知识点。 线程的实现方式对于线程的实现方式是一个老生常谈的问题了,可以通过实现Runnable接口重写run()方法实现,可以实现Callable接口,也可以继承... 聊聊java中的线程 线程的实现方式 启动线程 join()方法 总结 聊聊java中的线程坚持原创,写好每一篇文章随着用户量的逐渐增多,请求越来越多,并发问题随之而来,线程的学习自然也成了重点内容,也是出去找工作不得不进行准备的知识点。 线程的实现方式对于线程的实现方式是一个老生常谈的问题了,可以通过实现Runnable接口重写run()方法实现,可以实现Callable接口,也可以继承...
- 0. 简介我们在开发ROS2程序时会发现,当面对只有一个node节点时,程序的调用是线性的,这个时候就会有两种解决方式,一种就是使用rclcpp_components来完成对子节点的注册,并完成类似ROS1中Nodelets的操作。另外一种就是使用执行器和回调组完成多线程的创建。 1. ROS2中多线程–callback_group相较于ROS1中使用MultiThreadedSpinne... 0. 简介我们在开发ROS2程序时会发现,当面对只有一个node节点时,程序的调用是线性的,这个时候就会有两种解决方式,一种就是使用rclcpp_components来完成对子节点的注册,并完成类似ROS1中Nodelets的操作。另外一种就是使用执行器和回调组完成多线程的创建。 1. ROS2中多线程–callback_group相较于ROS1中使用MultiThreadedSpinne...
- String 是 Java 语言非常基础和重要的类,提供了构造和管理字符串的各种基本逻辑。它是典型的 Immutable 类,被声明成为 final class,所有属性也都是 final 的。也由于它的不可变性,类似拼接、裁剪字符串等动作,都会产生新的 String 对象。由于字符串操作的普遍性,所以相关操作的效率往往对应用性能有明显影响。StringBuffer 是为解决上面提到拼接产生... String 是 Java 语言非常基础和重要的类,提供了构造和管理字符串的各种基本逻辑。它是典型的 Immutable 类,被声明成为 final class,所有属性也都是 final 的。也由于它的不可变性,类似拼接、裁剪字符串等动作,都会产生新的 String 对象。由于字符串操作的普遍性,所以相关操作的效率往往对应用性能有明显影响。StringBuffer 是为解决上面提到拼接产生...
- LyScript 中提供了多种内存特征扫描函数,每一种扫描函数用法各不相同,在使用扫描函数时应首先搞清楚他们之间的差异,如下将分别详细介绍每一种内存扫描函数是如何灵活运用的,最后将实现一个简易版内存查壳脚本,可快速定位目标程序加了什么壳。 LyScript 中提供了多种内存特征扫描函数,每一种扫描函数用法各不相同,在使用扫描函数时应首先搞清楚他们之间的差异,如下将分别详细介绍每一种内存扫描函数是如何灵活运用的,最后将实现一个简易版内存查壳脚本,可快速定位目标程序加了什么壳。
- 浩哥Java多线程整理学习系列之01 基础知识整理 浩哥Java多线程整理学习系列之01基础知识整理 1. 如何查看电脑核数及线程数右击任务栏→任务管理器可以看到内核数(物理核心数)和逻辑处理数。其中CPU核心数和线程数是一对一的关系,逻辑处理器的个数就是虚拟出来的,采用多核技术。 Linux查询CPU核心数# 查询物理cpu核心数cat /proc/cpuinfo| grep "cpu c... 浩哥Java多线程整理学习系列之01 基础知识整理 浩哥Java多线程整理学习系列之01基础知识整理 1. 如何查看电脑核数及线程数右击任务栏→任务管理器可以看到内核数(物理核心数)和逻辑处理数。其中CPU核心数和线程数是一对一的关系,逻辑处理器的个数就是虚拟出来的,采用多核技术。 Linux查询CPU核心数# 查询物理cpu核心数cat /proc/cpuinfo| grep "cpu c...
- 说到关系型数据库,最常想到的就是MySQL、oracle了;说到非关系型数据库,最常想到的就是redis、MongoDB了。而Redis因其速度快的优势,广泛应用在各种缓存场景中。 但redis数据是存储在内存中,所以数据的持久化就显得尤为重要,我们都知道,Redis有两大持久化机制,分别是 AOF日志 和 RDB快照,今天就先来说说AOF日志的重要知识吧。 说到关系型数据库,最常想到的就是MySQL、oracle了;说到非关系型数据库,最常想到的就是redis、MongoDB了。而Redis因其速度快的优势,广泛应用在各种缓存场景中。 但redis数据是存储在内存中,所以数据的持久化就显得尤为重要,我们都知道,Redis有两大持久化机制,分别是 AOF日志 和 RDB快照,今天就先来说说AOF日志的重要知识吧。
- 无论是在 Kubernetes 中删除一个 pod,还是用 Docker 来停止一个容器,最后都会使用 Containerd 这个服务。Containerd 在停止容器时,会向容器的 init 进程发送一个 SIGTERM 信号。在 init 进程退出后,容器内的其他进程也会立刻退出。不过不同的是,init 进程收到的是 SIGTERM 信号,而容器内的其他进程收到的则是 SIGKILL 信号。 无论是在 Kubernetes 中删除一个 pod,还是用 Docker 来停止一个容器,最后都会使用 Containerd 这个服务。Containerd 在停止容器时,会向容器的 init 进程发送一个 SIGTERM 信号。在 init 进程退出后,容器内的其他进程也会立刻退出。不过不同的是,init 进程收到的是 SIGTERM 信号,而容器内的其他进程收到的则是 SIGKILL 信号。
- 在实际的electron项目开发过程中,为了快读开发,有一些第三方软件例如:截图软件直接调用了现成的软件。那么electron如何调用.exe并传递相应参数呢?在网上找了一堆说的都是下载什么包,做什么操作,云里雾里。这里我就给大家说一下怎么去操作这个。1. 使用 child_process 插件child_process 是node的一个重要模块,熟悉shell脚本的同学,可以用它来完成很... 在实际的electron项目开发过程中,为了快读开发,有一些第三方软件例如:截图软件直接调用了现成的软件。那么electron如何调用.exe并传递相应参数呢?在网上找了一堆说的都是下载什么包,做什么操作,云里雾里。这里我就给大家说一下怎么去操作这个。1. 使用 child_process 插件child_process 是node的一个重要模块,熟悉shell脚本的同学,可以用它来完成很...
- if __ name__ ==”__main__”的作用 if __ name__ ==”__main__” 在不同的场景下应用不同:常见用法是用于区分脚本和模块。 如果当前文件里写了这句判断,在当前文件运行时,该条件成立;而该文件被当作模块导入到其他文件时,此条件则不成立了。此时__name__ 等于模块名。所以用这条语句很好的限制了文件被当作模块来进行使用。另外,这条语句的下划线... if __ name__ ==”__main__”的作用 if __ name__ ==”__main__” 在不同的场景下应用不同:常见用法是用于区分脚本和模块。 如果当前文件里写了这句判断,在当前文件运行时,该条件成立;而该文件被当作模块导入到其他文件时,此条件则不成立了。此时__name__ 等于模块名。所以用这条语句很好的限制了文件被当作模块来进行使用。另外,这条语句的下划线...
- 欢迎DMS的小伙伴给建议 欢迎DMS的小伙伴给建议
- 内核枚举进程使用`PspCidTable` 这个未公开的函数,它能最大的好处是能得到进程的EPROCESS地址,由于是未公开的函数,所以我们需要变相的调用这个函数,通过`PsLookupProcessByProcessId`函数查到进程的EPROCESS,如果`PsLookupProcessByProcessId`返回失败,则证明此进程不存在,如果返回成功则把EPROCESS、PID、PPID、进 内核枚举进程使用`PspCidTable` 这个未公开的函数,它能最大的好处是能得到进程的EPROCESS地址,由于是未公开的函数,所以我们需要变相的调用这个函数,通过`PsLookupProcessByProcessId`函数查到进程的EPROCESS,如果`PsLookupProcessByProcessId`返回失败,则证明此进程不存在,如果返回成功则把EPROCESS、PID、PPID、进
- 在本人前一篇博文`《驱动开发:通过ReadFile与内核层通信》`详细介绍了如何使用应用层`ReadFile`系列函数实现内核通信,本篇将继续延申这个知识点,介绍利用`PIPE`命名管道实现应用层与内核层之间的多次通信方法。 在本人前一篇博文`《驱动开发:通过ReadFile与内核层通信》`详细介绍了如何使用应用层`ReadFile`系列函数实现内核通信,本篇将继续延申这个知识点,介绍利用`PIPE`命名管道实现应用层与内核层之间的多次通信方法。
- 在上一章`《驱动开发:内核LDE64引擎计算汇编长度》`中,`LyShark`教大家如何通过`LDE64`引擎实现计算反汇编指令长度,本章将在此基础之上实现内联函数挂钩,内核中的`InlineHook`函数挂钩其实与应用层一致,都是使用`劫持执行流`并跳转到我们自己的函数上来做处理,唯一的不同的是内核`Hook`只针对`内核API`函数,但由于其身处在`最底层`所以一旦被挂钩其整个应用层都将会受到 在上一章`《驱动开发:内核LDE64引擎计算汇编长度》`中,`LyShark`教大家如何通过`LDE64`引擎实现计算反汇编指令长度,本章将在此基础之上实现内联函数挂钩,内核中的`InlineHook`函数挂钩其实与应用层一致,都是使用`劫持执行流`并跳转到我们自己的函数上来做处理,唯一的不同的是内核`Hook`只针对`内核API`函数,但由于其身处在`最底层`所以一旦被挂钩其整个应用层都将会受到
- Java关键字大概 50+,但实际上有些关键字我们只是用,并没有明白该关键字背后的原理。本文就将盘点那些可能是考点的关键字。static意思是静态的、全局的,一旦被修饰,说明被修饰的东西在一定范围内是共享的,谁都可以访问,这时候需要注意并发读写的问题。1.1 修饰的对象static 只能修饰类变量、方法和方法块。1、当 static 修饰类变量时,如果该变量是 public 的话,表示该变量... Java关键字大概 50+,但实际上有些关键字我们只是用,并没有明白该关键字背后的原理。本文就将盘点那些可能是考点的关键字。static意思是静态的、全局的,一旦被修饰,说明被修饰的东西在一定范围内是共享的,谁都可以访问,这时候需要注意并发读写的问题。1.1 修饰的对象static 只能修饰类变量、方法和方法块。1、当 static 修饰类变量时,如果该变量是 public 的话,表示该变量...
上滑加载中
推荐直播
-
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中 -
码道新技能,AI 新生产力——从自动视频生成到开源项目解析2026/04/08 周三 19:00-21:00
童得力-华为云开发者生态运营总监/何文强-无人机企业AI提效负责人
本次华为云码道 Skill 实战活动,聚焦两大 AI 开发场景:通过实战教学,带你打造 AI 编程自动生成视频 Skill,并实现对 GitHub 热门开源项目的智能知识抽取,手把手掌握 Skill 开发全流程,用 AI 提升研发效率与内容生产力。
回顾中 -
华为云码道:零代码股票智能决策平台全功能实战2026/04/18 周六 10:00-12:00
秦拳德-中软国际教育卓越研究院研究员、华为云金牌讲师、云原生技术专家
利用Tushare接口获取实时行情数据,采用Transformer算法进行时序预测与涨跌分析,并集成DeepSeek API提供智能解读。同时,项目深度结合华为云CodeArts(码道)的代码智能体能力,实现代码一键推送至云端代码仓库,建立起高效、可协作的团队开发新范式。开发者可快速上手,从零打造功能完整的个股筛选、智能分析与风险管控产品。
回顾中
热门标签