摘要: 一、简介与使用 自旋锁适用于用于保护短的代码段,通过spinlock_t数据结构实现,常用接口如下: 1) spin_lock 和 spin_unlock 2) spin_lock_irqsave 和 spin_unlock_restore: 获取锁的同时还会关中断 3)spin_lock_bh/ 阅读全文
posted @ 2021-06-12 23:04 zq216991 阅读(25) 评论(0) 推荐(0) 编辑
摘要: 提示如下 解决方式如下: 阅读全文
posted @ 2019-03-04 11:09 zq216991 阅读(1211) 评论(0) 推荐(0) 编辑
摘要: Jvm遇到new指令创建对象主要分为以下几步: 1. 定位到常量池中对应类的符号引用,检查这个符号引用是否已被加载、解析和初始化。 2.分配内存,主要有指针碰撞和空闲列表两种方式; 为保证并发情况下的线程安全,主要有两种方案: (1) cas (2) 使用本地线程分配缓冲(TLAB), 通过-XX: 阅读全文
posted @ 2018-09-08 22:06 zq216991 阅读(520) 评论(0) 推荐(0) 编辑
摘要: 死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。 首先我们来看下面一段死锁代码 thread1 get athread2 get b 上面代 阅读全文
posted @ 2018-02-08 00:23 zq216991 阅读(398) 评论(0) 推荐(0) 编辑
摘要: 3306: 树 1.思路 首先dfs整颗树将树转换线性结构,前两个操作比较简单,然后主要是对于操作三,有三种情况: 1.x=rt,那么我们直接求出整颗树中的最小值就是答案; 2.x在原树中为rt的祖先节点,那么我们首先求出从x到rt路径上的x的第一个节点y,那么答案就是除了以y为根的子树的其他所有节 阅读全文
posted @ 2017-10-21 13:00 zq216991 阅读(237) 评论(2) 推荐(0) 编辑
摘要: 3747: [POI2015]Kinoman 1.思路 对于此类问题,我们采用枚举右端点的方法来求解,当要添加第i天所要看的电影时,那么从上一次出现f[i]电影的地方pre[i]+1到第i天,我们加上好看值w[f[i]], 同时从pre[pre[i]]+1到pre[i], 因为存在重复,所以我们减去 阅读全文
posted @ 2017-10-20 23:54 zq216991 阅读(157) 评论(0) 推荐(0) 编辑
摘要: CodeForces - 620E 1.题意 对于一棵树进行以下两种操作: 1 v c 将根为v的子树全部染色为c 2 v 查询根为v的子树的颜色的个数 2.思路 首先利用dfs时间序将树转化为线性结构,然后利用线段树进行区间颜色数的处理,然后因为只有60种颜色,那么我们可以用一个long long 阅读全文
posted @ 2017-10-14 21:59 zq216991 阅读(288) 评论(0) 推荐(0) 编辑
摘要: 在非KDE桌面环境下,如果安装了fcitx-module-kimpanel,可能会导致Fcitx输入中文时不显示候选词框,移除该组件,然后重启Fcixt。 阅读全文
posted @ 2017-09-25 17:29 zq216991 阅读(624) 评论(0) 推荐(0) 编辑
摘要: #1110 : 正则表达式 1.思路 区间DP,dp[i][j]代表区间i到j是否为正则表达式. 2.代码 阅读全文
posted @ 2017-09-19 19:37 zq216991 阅读(167) 评论(0) 推荐(0) 编辑
摘要: [SDOI2009]HH的项链 1.思路 题目的意思就是给一个 序列,然后多个询问,对于每个询问,给出一个区间,让你求出这个区间的不同元素的个数,此类问题目前我所知道有三种方法: (1).主席树 (2).莫队算法 (3).树状数组,假定我们要处理的数组为a,首先我们将所有的询问区间按左端点从小到大排 阅读全文
posted @ 2017-09-18 02:27 zq216991 阅读(156) 评论(0) 推荐(0) 编辑