认识Java异常 throw(抛出)和throws(声明)的区别 throws一般用于检查型异常,就是编译时就有需要声明或者捕获的异常,表示此方法不处理异常,而交给方法调用处进行处理 throw一般用于运行时异常,继承于(RuntimeException),并且不需要throws Exception ...
分类:
编程语言 时间:
2020-06-14 23:17:47
阅读次数:
59
伪类选择器 伪类选择器前面都有 : (冒号) 除了 hover,其他一般用于链接 link —— 对 鼠标点击之前(未被访问) hover —— 对 鼠标指针悬停 active —— 对 鼠标点击 visited —— 对 鼠标点击之后(已被访问) target —— 可用于选取当前活动的目标元素, ...
分类:
其他好文 时间:
2020-06-14 20:41:29
阅读次数:
75
同样的道理,既然C++11只负责sp_counted_base的原子性,那么shared_ptr本身就没有保证线程安全了,加入两个线程同时访问同一个shared_ptr对象,一个进行释放(reset),另一个读取裸指针的值,那么最后的结果就不确定了,很有可能发生野指针访问crash。 ...
分类:
编程语言 时间:
2020-06-14 20:40:22
阅读次数:
64
C++中函数指针的用途非常广泛,例如回调函数,接口类的设计等,但函数指针始终不太灵活,它只能指向全局或静态函数,对于类成员函数、lambda表达式或其他可调用对象就无能为力了,因此,C++11推出了std::function与std::bind这两件大杀器。 std::function vs 函数指 ...
分类:
其他好文 时间:
2020-06-14 20:33:58
阅读次数:
93
写在前面 K8S对Pod的健康状态可以通过两类探针来检查:livenessProbe和readinessProbe,kubelet通过定期执行这两类探针来诊断容器的健康状况。 livenessProbe简介 存活指针,判断Pod(中的应用容器)是否健康,可以理解为健康检查。我们使用livenessP ...
分类:
Web程序 时间:
2020-06-14 19:01:45
阅读次数:
106
结合中断上下文切换和进程上下文切换分析Linux内核一般执行过程: 一 以fork和execve系统调用为例分析中断上下文的切换 fork系统调用用于创建一个新进程,称为子进程,它与进行fork()调用的进程(父进程)并发运行。创建新的子进程后,两个进程都将执行fork()系统调用之后的下一条指令。 ...
分类:
系统相关 时间:
2020-06-14 18:53:09
阅读次数:
56
图的定义 邻接矩阵 结构简单,操作方便 稀疏图将浪费大量的空间 邻接表 (类比 树 孩子表示法?) 操作复杂 注意邻接链表的结构体定义 不要搞混不要被绕晕啊! 嵌套太多了 有时用指针 还要看清给的int还是char typedef struct ArcNode { int adjvex; struc ...
分类:
其他好文 时间:
2020-06-14 18:36:30
阅读次数:
102
第六章我们首先学习了图,知道图是由两个集合V(点)和E(边)组成,也知道了有向图和无向图的区别,同时也学习了用如何用邻接矩阵和领接表来表示图。 邻接矩阵: 方便检查任意一堆顶点间是否存在边,方便找任一顶点的所有“邻接点”,方便计算任一顶点的“度”(从改点出发的边数为出度,指向该点的为入度),但存稀疏 ...
分类:
其他好文 时间:
2020-06-14 18:33:53
阅读次数:
56
双指针 思路: 双指针覆盖多余重复项,一个指针i负责遍历,一个指针j负责要覆盖的重复项位置。 用count记录重复项的个数,则不用覆盖的情况是nums[i]==nums[j]并且count>2,那么需要覆盖的情况就是nums[i] != nums[j] 或者 count<=2,这里我们可以在nums ...
分类:
编程语言 时间:
2020-06-14 15:00:47
阅读次数:
63
在C语音中代表指针,&代表地址 在C++中代表指针,而&代表引用,而*&代表指针引用 指针是一个变量(它的值是一个地址),而指针引用指的是这个变量的引用; 在C++中如果参数不是引用的话会调用参数对象的拷贝构造函数,所以如果有需求想改变指针所指的对象(换句话说,就是要改变指针里面存的地址),就要使用 ...
分类:
编程语言 时间:
2020-06-14 12:56:45
阅读次数:
70