- 目录 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...
- 在ubuntu系统的termial下,用apt-get install 安装软件的时候,如果在未完成下载的情况下将terminal close。此时 apt-get进程可能没有结束。结果,如果再次运行apt-get install 命令安装如今,可能会发生下面的提示: 无法获得锁 /var/lib/dpkg/l... 在ubuntu系统的termial下,用apt-get install 安装软件的时候,如果在未完成下载的情况下将terminal close。此时 apt-get进程可能没有结束。结果,如果再次运行apt-get install 命令安装如今,可能会发生下面的提示: 无法获得锁 /var/lib/dpkg/l...
- 文章目录 功能介绍类自动锁互斥锁的封装任务的封装接口类线程类封装线程槽 功能介绍 此类实现了如下功能: 在程序启动时即创建若干个线程(即线程池),当有任务需要执行时,将需要执行的任务放入任务队列,唤醒一个空闲线程进行任务的处理,处理完任务后线程继续进入睡眠 状态。 类 类名内容CAutoLock自动锁CMutex该类实现了互斥锁的封装CTask任... 文章目录 功能介绍类自动锁互斥锁的封装任务的封装接口类线程类封装线程槽 功能介绍 此类实现了如下功能: 在程序启动时即创建若干个线程(即线程池),当有任务需要执行时,将需要执行的任务放入任务队列,唤醒一个空闲线程进行任务的处理,处理完任务后线程继续进入睡眠 状态。 类 类名内容CAutoLock自动锁CMutex该类实现了互斥锁的封装CTask任...
上滑加载中
推荐直播
-
华为云软件开发生产线(CodeArts)4月新特性解读
2025/05/30 周五 16:30-17:30
Enki 华为云高级产品经理
不知道产品的最新特性?没法和产品团队建立直接的沟通?本期直播产品经理将为您解读华为云软件开发生产线4月发布的新特性,并在直播过程中为您答疑解惑。
回顾中 -
基于昇腾的皮肤病理多模态大模型研发
2025/06/05 周四 19:00-20:00
崔笑宇 华为开发者布道师-高校教师
本期直播聚焦昇腾AI平台在皮肤病理多模态大模型研发中的全流程技术突破,通过基于国产基座模型QwenV2.5进行微调,融入思维链数据优化推理能力,深度融合病理图像、临床文本及专家语音等多模态数据,构建覆盖“认知行为-逻辑推理-决策生成”全流程的皮肤病理大模型。
回顾中
热门标签