- Java 锁分类 Java 中的锁有很多,可以按照不同的功能、种类进行分类,下面是我对 Java 中一些常用锁的分类,包括一些基本的概述 从线程是否需要对资源加锁可以分为 悲观锁 和 乐观锁从资源已被锁定,线程是否阻塞可以分为 自旋锁从多个线程并发访问资源,也就是 Synchronized 可以分为 无锁、偏向锁、 轻量级锁 和 重量级锁从锁的公平性进行区分,可... Java 锁分类 Java 中的锁有很多,可以按照不同的功能、种类进行分类,下面是我对 Java 中一些常用锁的分类,包括一些基本的概述 从线程是否需要对资源加锁可以分为 悲观锁 和 乐观锁从资源已被锁定,线程是否阻塞可以分为 自旋锁从多个线程并发访问资源,也就是 Synchronized 可以分为 无锁、偏向锁、 轻量级锁 和 重量级锁从锁的公平性进行区分,可...
- 碎碎念 这是一道老生常谈的问题了,字符串是不仅是 Java 中非常重要的一个对象,它在其他语言中也存在。比如 C++、Visual Basic、C# 等。字符串使用 String 来表示,字符串一旦被创建出来就不会被修改,当你想修改 StringBuffer 或者是 StringBuilder,出于效率的考量,虽然 String 可以通过 + 来创建多个对象达到字符串... 碎碎念 这是一道老生常谈的问题了,字符串是不仅是 Java 中非常重要的一个对象,它在其他语言中也存在。比如 C++、Visual Basic、C# 等。字符串使用 String 来表示,字符串一旦被创建出来就不会被修改,当你想修改 StringBuffer 或者是 StringBuilder,出于效率的考量,虽然 String 可以通过 + 来创建多个对象达到字符串...
- 目录 1、什么是线程 2、线程的状态 3、怎么通俗理解进程,线程? 4、线程和进程的区别 5、什么是线程安全 6、如何创建线程 1、什么是线程 线程是操作系统调度的最小单元,也叫轻量级进程。它被包含在进程之中,是进程中的实际运作单位。同一进程可以创建多个线程,每个进程都有自己独立的一块内存空间。并且能够访问共享的内存变量。 2、线程的状... 目录 1、什么是线程 2、线程的状态 3、怎么通俗理解进程,线程? 4、线程和进程的区别 5、什么是线程安全 6、如何创建线程 1、什么是线程 线程是操作系统调度的最小单元,也叫轻量级进程。它被包含在进程之中,是进程中的实际运作单位。同一进程可以创建多个线程,每个进程都有自己独立的一块内存空间。并且能够访问共享的内存变量。 2、线程的状...
- Hey guys ,我是 cxuan,欢迎你阅读我最新一期的技术文章。这一篇文章我要和你聊一聊 Java 并发中关于内存模型的那些事情,我会通过向你问问题的形式来展开,如果你有思路,可以先不要看我的答案,看看你的回答和我的答案是不是有出入,如果你有任何疑问,欢迎在这篇文章下方留言,下面开始我们的正文! 究竟什么是内存模型? 在多处理系统中,每个 CPU 通常都包含一... Hey guys ,我是 cxuan,欢迎你阅读我最新一期的技术文章。这一篇文章我要和你聊一聊 Java 并发中关于内存模型的那些事情,我会通过向你问问题的形式来展开,如果你有思路,可以先不要看我的答案,看看你的回答和我的答案是不是有出入,如果你有任何疑问,欢迎在这篇文章下方留言,下面开始我们的正文! 究竟什么是内存模型? 在多处理系统中,每个 CPU 通常都包含一...
- Hey guys ,这里是 cxuan ,前段时间有位小伙伴跟我分享了他面试外包的经历,外包也开始卷起来了!! 最开始是打算面试外包公司刷经验,等经验差不多了,再去甲方尝试,可惜不太顺利。 一、迈思(面试了30分钟) 自我介绍 左连接(a 表左连接 b 表,a 表全部数据出来,b 表没有的数据为空) a 表左连接 b 表,b 表左连接 c 表,c 表左连接 ... Hey guys ,这里是 cxuan ,前段时间有位小伙伴跟我分享了他面试外包的经历,外包也开始卷起来了!! 最开始是打算面试外包公司刷经验,等经验差不多了,再去甲方尝试,可惜不太顺利。 一、迈思(面试了30分钟) 自我介绍 左连接(a 表左连接 b 表,a 表全部数据出来,b 表没有的数据为空) a 表左连接 b 表,b 表左连接 c 表,c 表左连接 ...
- 文章目录 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 workqueue是内核中重要的机制,当您要在单独的进程上下文中执行特定任务时使用,并且广泛用于内核中的各个位置。这 可以看作是线程池的概念,在创建工作队列时,会先创建工作线程,然后在必要的工作发生时使用线程来执行... 文章目录 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 workqueue是内核中重要的机制,当您要在单独的进程上下文中执行特定任务时使用,并且广泛用于内核中的各个位置。这 可以看作是线程池的概念,在创建工作队列时,会先创建工作线程,然后在必要的工作发生时使用线程来执行...
- 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 文章目录 1、Netlink 1.1.用户空间Netlink套接字 2、Netlink IPC 数据结构 2.1、netlink消息的开头 2.2、设置结构 iovec 2.3、结构 msghdr ... 平台 内核版本 安卓版本 RK3399 Linux4.4 Android7.1 文章目录 1、Netlink 1.1.用户空间Netlink套接字 2、Netlink IPC 数据结构 2.1、netlink消息的开头 2.2、设置结构 iovec 2.3、结构 msghdr ...
- [PX3][Android7.1] 调试笔记 — 添加白名单 需求 现在道道通导航后台运行时,容易被系统回收, 包名:cn.jyuntech.map 需要把他加入白名单 原理 进程是有它的优先级的,这个优先级通过进程的adj值来反映,它是linux内核分配给每个系统进程的一个值,代表进程的优先级,进程回收机制就是根据这个优先级来决定是否进行回收,adj值定义在c... [PX3][Android7.1] 调试笔记 — 添加白名单 需求 现在道道通导航后台运行时,容易被系统回收, 包名:cn.jyuntech.map 需要把他加入白名单 原理 进程是有它的优先级的,这个优先级通过进程的adj值来反映,它是linux内核分配给每个系统进程的一个值,代表进程的优先级,进程回收机制就是根据这个优先级来决定是否进行回收,adj值定义在c...
- 文章参考:小刘老师讲源码 1、简介 Semaphore,信号量,它保存了一系列的许可(permits),每次调用acquire()都将消耗一个许可,每次调用release()都将归还一个许可。Semaphore通常用于限制同一时间对共享资源的访问次数上,也就是常说的限流。Semaphore信号量,获取通行证流程图: 2、入门案例 案例1:Pool.jav... 文章参考:小刘老师讲源码 1、简介 Semaphore,信号量,它保存了一系列的许可(permits),每次调用acquire()都将消耗一个许可,每次调用release()都将归还一个许可。Semaphore通常用于限制同一时间对共享资源的访问次数上,也就是常说的限流。Semaphore信号量,获取通行证流程图: 2、入门案例 案例1:Pool.jav...
- 内核线程的使用: static struct task_struct *tsk; 函数kthread_run 因为我的线程执行时间长,为了保证此线程不能反复创建我做如下处理: if(tsk == NULL){ tsk = kthread_run(AutoScan, NULL, "AutoScan"); }else{ kthread_stop(tsk); tsk ... 内核线程的使用: static struct task_struct *tsk; 函数kthread_run 因为我的线程执行时间长,为了保证此线程不能反复创建我做如下处理: if(tsk == NULL){ tsk = kthread_run(AutoScan, NULL, "AutoScan"); }else{ kthread_stop(tsk); tsk ...
- 文章参考:小刘源码 ConcurrentHashMap源码解析_01 成员属性、内部类、构造方法分析 1、简介 ConcurrentHashMap是HashMap的线程安全版本,内部也是使用(数组 + 链表 + 红黑树)的结构来存储元素。相比于同样线程安全的HashTable来说,效率等各方面都有极大地提高。在学习ConcurrentHashMap源码之... 文章参考:小刘源码 ConcurrentHashMap源码解析_01 成员属性、内部类、构造方法分析 1、简介 ConcurrentHashMap是HashMap的线程安全版本,内部也是使用(数组 + 链表 + 红黑树)的结构来存储元素。相比于同样线程安全的HashTable来说,效率等各方面都有极大地提高。在学习ConcurrentHashMap源码之...
- 使用 ftrace 跟踪内核 在内核层面上分析事件有很多的工具:SystemTap、ktap、Sysdig、LTTNG 等等,你也可以在网络上找到关于这些工具的大量介绍文章和资料。 而对于使用 Linux 原生机制去跟踪系统事件以及检索/分析故障信息的方面的资料却很少找的到。这就是 ftrace,它是添加到内核中的第一款跟踪工具,今天我们来看一下它都能做什么,让... 使用 ftrace 跟踪内核 在内核层面上分析事件有很多的工具:SystemTap、ktap、Sysdig、LTTNG 等等,你也可以在网络上找到关于这些工具的大量介绍文章和资料。 而对于使用 Linux 原生机制去跟踪系统事件以及检索/分析故障信息的方面的资料却很少找的到。这就是 ftrace,它是添加到内核中的第一款跟踪工具,今天我们来看一下它都能做什么,让...
- 本文来自网络,著作权归原创作者所有,不做任何商业用途。 一、四大名捕 四大名捕,最初出现于温瑞安创作的武侠小说,是朝廷中正义力量诸葛小花的四大徒弟,四人各怀绝技,分别是轻功暗器高手“无情”、内功卓越的高手“铁手”、腿功惊人的“追命”和剑法一流的“冷血”。 本文四大名捕由 linux 命令所出演: 无情:ps 出演铁手:dstat &n... 本文来自网络,著作权归原创作者所有,不做任何商业用途。 一、四大名捕 四大名捕,最初出现于温瑞安创作的武侠小说,是朝廷中正义力量诸葛小花的四大徒弟,四人各怀绝技,分别是轻功暗器高手“无情”、内功卓越的高手“铁手”、腿功惊人的“追命”和剑法一流的“冷血”。 本文四大名捕由 linux 命令所出演: 无情:ps 出演铁手:dstat &n...
- 1、ThreadLocal简介 ThreadLocal是一个全局对象,ThreadLocal是线程范围内变量共享的解决方案;ThreadLocal可以看作是一个map集合,key就是当前线程,value就是要存放的变量。eg如下: // 声明一个ThreadLocal实例 ThreadLocal threadLocal = new ThreadLocal(); //... 1、ThreadLocal简介 ThreadLocal是一个全局对象,ThreadLocal是线程范围内变量共享的解决方案;ThreadLocal可以看作是一个map集合,key就是当前线程,value就是要存放的变量。eg如下: // 声明一个ThreadLocal实例 ThreadLocal threadLocal = new ThreadLocal(); //...
- 文章目录 等待队列相关数据结构 wait_queue_head_t wait_queue_t 等待队列相关操作API介绍 init_waitqueue_head add_wait_queue remove_wait_queue 平台 内核版本 安卓版本 RK3399 Lin... 文章目录 等待队列相关数据结构 wait_queue_head_t wait_queue_t 等待队列相关操作API介绍 init_waitqueue_head add_wait_queue remove_wait_queue 平台 内核版本 安卓版本 RK3399 Lin...
上滑加载中
推荐直播
-
华为云码道Skill实战与极速交付,智能开发全链路实战2026/07/22 周三 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;姜浩-华为云HCDG核心组成员
直播深度解读华为云码道6月产品新特性,从Skill市场安装专家技能,带你零距离体验从需求,开发,审查,重构全链路闭环的开发过程。从零构建并交付一个完整项目,让您体验从代码提交到服务上线的“极速”之旅。
正在直播 -
聚开发者之力,创具身新未来2026/07/23 周四 15:00-17:00
张豪杰/程文/王军/刘新春/黄钦开 /张晓天
本次华为云具身智能开发平台CloudRobo培训面向具身智能开发者,带您全流程体验机器人本体R2C小时级接入、环境重建与轨迹生成仿真数据生产、PB级数据管理、数据评测、模型训推、强化学习和Benchmark一键评测等功能,并体验业界主流具身模型应用。
即将直播
热门标签