递归 递归实现的原理: 一个递归函数的调用过程类似于多个函数的嵌套的调用,只不过调用函数和被调用函数是同一个函数。为了保证递归函数的正确执行,系统需设立一个工作栈。具体地说,递归调用的内部执行过程如下: 1. 运动开始时,首先为递归调用建立一个 工作栈 ,其结构包括 值参 、 局部变量 和 返回地址 ...
分类:
编程语言 时间:
2020-01-15 22:51:53
阅读次数:
77
1. 原子操作原子操作指的是在执行过程中不会被别的代码路径所中断的操作。常用原子操作函数举例:atomic_t v = ATOMIC_INIT(0); //定义原子变量v并初始化为0atomic_read(atomic_t *v); //返回原子变量的值void atomic_inc(atomic_ ...
分类:
其他好文 时间:
2020-01-15 21:33:40
阅读次数:
72
我们都知道在程序执行过程中,java虚拟机为了速率,有可能会产生重排序。拿最普通的初始化一个实例来讲。他的过程如下: (1)分配内存; (2)初始化实例; (3)将实例指向该内存。 但是由于重排序的特性,可能最终的执行方式是1->3->2。如此就会产生,还没有将实例中的变量初始化完毕,就已经分配了内 ...
分类:
其他好文 时间:
2020-01-14 16:10:10
阅读次数:
86
对象的创建和销毁都在 JavaScript 执行过程中发生。把对象的所有引用都设置为 null,可以强制性地废除对象。 在 ECMAScript 中,所有对象并非同等创建的。 一、对象类型 一般来说,可以创建并使用的对象有三种:本地对象、内置对象和宿主对象。 1. 本地对象 本地对象就是 ECMA- ...
分类:
其他好文 时间:
2020-01-13 15:55:04
阅读次数:
76
递归实现: 求n个数字的和 求n个数字的和, 5 计算1 + 2 + 3 + 4 + 5 var sum = 0; for (var i = 1; i <= 5; i++) { sum += i; } console.log(sum); 递归实现:求n个数字的和 n=5 > 5+4+3+2+1 // ...
分类:
Web程序 时间:
2020-01-13 10:44:25
阅读次数:
126
一、前言 前面一篇博文简单的通过官方文档来了解了下机器学习是什么,以及简单的文字筛选Demo,但是我在实际执行过程中遇到的些问题,在这里抛出来。 二、训练源 我准备做出一个可以识别影评是好评、差评还是中评的机器学习模型。 这是我准备的数据: [ { "text":"这部电影真好看", "label" ...
分类:
移动开发 时间:
2020-01-12 23:39:07
阅读次数:
192
一、什么是回调函数? 看了很多版本的解释,终于明白了所谓的回调就是函数A调用函数B并将函数C作为参数传给函数B,并由函数B进行调用的过程,所以这里的函数C就是回调函数。 具体的执行过程可以见下图: 看图中的执行过程咋一看和我们正常的函数执行流程没有什么大的区别,但实际的实现效果却可以因为函数C的不同 ...
分类:
其他好文 时间:
2020-01-11 09:22:57
阅读次数:
78
死锁:是指两个或两个以上的进程在执行过程中,因争夺资源而造成的一 种互相等待的现象,若无外力作用,它们都将无法推进下去,此时称系统处于 死锁状态或系统产生了死锁。 饥饿:考虑一台打印机分配的例子,当有多个进程需要打印文件时,系统 按照短文件优先的策略排序,该策略具有平均等待时间短的优点,似乎非常合 ...
分类:
其他好文 时间:
2020-01-09 14:44:50
阅读次数:
118
1. 一个程序至少有一个进程,一个进程至少有一个线程(进程可以理解成线程的容器)。 2. 进程在执行过程中拥有独立的内存单元,而多个线程共享内存,从而极大地提高了程序的运行效率。 线程在执行过程中与进程还是有区别的。每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口。 但是线程不能够独立执 ...
分类:
编程语言 时间:
2020-01-08 14:11:17
阅读次数:
69
Java 并发基础常见面试题总结 1. 什么是线程和进程? 1.1. 何为进程? 进程是程序的一次执行过程,是系统运行程序的基本单位,因此进程是动态的。系统运行一个程序即是一个进程从创建,运行到消亡的过程。 在 Java 中,当我们启动 main 函数时其实就是启动了一个 JVM 的进程,而 mai ...
分类:
编程语言 时间:
2020-01-08 00:55:57
阅读次数:
107