内存分配方面:系统在运行的时候会为每个进程分配不同的内存空间;而对线程而言,除了CPU外,系统不会为线程分配内存(线程所使用的资源来自其所属进程的资源),线程组之间只能共享资源。 包含关系:没有线程的进程可以看做是单线程的,如果一个进程内有多个线程,则执行过程不是一条线的,而是多条线(线程)共同完成的;线程...
#define命令是C语言中的一个宏定义命令,它用来将一个标识符定义为一个字符串,该标识符被称为宏名,被定义的字符串称为替换文本。 定义宏的作用一般是用一个短的名字代表一个长的字符串。 主要参考与:https://www.cnblogs.com/fnlingnzb-learner/p/6903966
协程和线程区别:协程避免了无意义的调度,由此可以提高性能,但也因此,程序员必须自己承担调度的责任,同时,协程也失去了标准线程使用多CPU的能力。 https://www.cnblogs.com/guolei2570/p/8810536.html https://blog.csdn.net/jason_cuijiahui/article/details/82587076 17、数据库索引,存储引擎 https://www.cnblogs...
1、C/C++指针参数赋值用法 指针(pointer)是“指向(point to)”另外一种类型的复合类型,它实现了对其它对象的间接访问。定义指针类型的方法将声明符写成*d的形式,其中d是变量名,如以下代码声明了一个整形指针:int *ip1; 指针赋值 对指针进行赋值只能使用以下四种类型
一、栈 1. 定义 栈元素具有线性关系,即前驱后继关系。是一种特殊的线性表。 栈的插入操作,叫作进栈,也称压栈、入栈。 栈的删除操作,叫做出栈,也有的叫作弹栈。 注意:最先进栈的元素不一定最后出栈。如三个整型元素1,2,3。 2. 抽象数据类型 同线性表一样,有顺序存储与
结果是16843009,并不是1。 memset(数组名如A,0,sizeof(A))和memset(数组名如A,-1,sizeof(A))分别能够将整个数组A初始化为0和-1(前者0,后者-1)。初始化其他数值慎用!!! ref 讲的非常详细 2. 二维数组的sizeof
请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子。如果一条路径经过了矩阵中的某一个格子,则之后不能再次进入这个格子。 例如a b c e s f c s a d e e 这样的3 X 4 矩阵中包含...
树中的节点是一对多的关系。具有以下特点: 1. n>0时,根节点是唯一的,不可能存在多个根节点。 2. 每个节点有零个至多个子节点;除了根节点外,每个节点有且仅有一个父节点。根节点没有父节点。 相关概念: 子树:除了根节点外,每个子节点都可以分为多个不相交的子树。
条件变量的详细介绍见:https://www.cnblogs.com/GuoXinxin/p/11675053.html C++里面使用条件变量实现和信号量相同的功能。下面代码是一个经典的生产者消费者模型: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40...
对a来说只有一个种类one,对b来说有两个种类one/two,对c来说有一个种类one。 2. ('_'.join(col)) 在两个字符串之间添加连接符_ 3. agg_new_trans.columns.values与agg_new_trans.columns 两者在for迭代取值的时候一样 4. groupby+agg(np.ptp) 群体中最大值和最小值之间的差异 ...