最近在重构项目代码时,发现两个线程同时访问一个加锁的std::list队列时,会出现恶性竞争锁的现象。 具体现象是A线程总是拿不到锁,B线程抢占几次后,A才抢占到。 由于是重构项目,也无法通过回滚代码来解决。 最终定位问题是,重构时对std::list队列单独封装了一个类导致的。单独封装一个类,那么 ...
分类:
编程语言 时间:
2019-12-21 22:19:03
阅读次数:
65
DOM的基本讲解 一、DOM (Document Object Model)文档对象模型 1、有属性有方法 1 var person = { 2 name:'派大星', 3 fav:function(){ 4 } 5 } 2、js中对象分类三种 (1)用户定义对象 (2)内建对象 Array Dat ...
分类:
其他好文 时间:
2019-12-09 16:51:35
阅读次数:
102
1.继承的定义: 被继承的父类必须放在字类上面 python中一个子类可以继承多个父类 继承是创建类的一种方式,新建的类称为字类或派生类,继承的类称为父类或基类 继承的作用: 减少代码冗余 在继承背景下对象属性的查找顺序:对象的名称空间 子类的名称空间 父类的名称空间 2. 派生:指的是字类继承父类 ...
分类:
其他好文 时间:
2019-11-26 22:22:31
阅读次数:
79
为什么要使用泛型仓储?好处是? 前两章在autofac注入的时候,用的User类作为例子,写了增删改查四个接口,也就是仓储的GRUD。 当我们再添加一个实体(比如Student)时,StudentRepository跟UserRepository代码几乎一样的代码,重复量很大,为了减少冗余、提高工作 ...
分类:
Web程序 时间:
2019-11-23 20:14:44
阅读次数:
88
第一份的爬虫爬取小说网 没解决的问题: 1. 爬取主页小说时,由于章节主页有最近章节,导致每一本小说的前面都有最新的十几章内容没法去除 2. 写入速度太慢,两本书大约10M,爬取了13分钟. 3. 代码冗余,暂时没有分函数爬取 ...
分类:
其他好文 时间:
2019-11-21 20:08:37
阅读次数:
66
函数 为什么要有函数? 在写代码的时候,有一些常用的代码需要书写多次,如果直接复制粘贴的话,会造成大量的冗余代码。 如果修改呢?? 多个页面呢?? 函数可以封装一段重复的JavaScript代码,它只需要声明一次,就可以被多次调用。 重复代码、冗余代码的缺点: 1. 代码重复,可阅读性差 2. 不易 ...
分类:
编程语言 时间:
2019-11-14 23:30:36
阅读次数:
124
一、叠加装饰器 叠加装饰器的定义 在同一个被装饰对象中,添加多个装饰器并执行 每一个新的功能都应该被放到一个新的装饰器,否则代码冗余,可扩展性差。 叠加装饰器:装饰的顺序:由下到上装饰 执行的顺序:由上往下 注意:无论inner中出现任何判断最后都要返回“调用后的被装饰对象”。 ''' 叠加装饰器: ...
分类:
其他好文 时间:
2019-11-14 00:18:16
阅读次数:
129
类的组合 一、什么是组合 组合就是一个类的对象具备某一个属性,该属性的值是指向另外外一个类的对象 二、为什么用组合 组合是用来解决类与类之间代码冗余的问题 首先我们先写一个简单版的选课系统 如上设计了一个选课系统,但是这个选课系统在未来一定是要修改、扩展的,因此我们需要修改上述的代码 三、如何用组合 ...
分类:
其他好文 时间:
2019-11-13 12:50:37
阅读次数:
71
[TOC] 函数的定义 1、什么是函数 函数就是一种工具,可以重复调用。 2、为什么要用函数 防止代码冗余 代码可读性差 3、怎么用函数 通过 (define)关键字定义函数 制造工具 调用函数 使用工具 4、函数名的命名规范 函数名的命名规范与变量名一样 5、函数的分类 有参函数 def inde ...
分类:
编程语言 时间:
2019-11-11 21:31:19
阅读次数:
119
函数基本知识一 一、灵魂三问 1.什么是函数 在程序中具备某种功能的“工具”就是函数,并且函数可以像工具一样重复调用 2.为什么要用函数 防止代码冗余和程序的可读性变差 3.怎么用函数 函数遵循先定义再调用的规则 即:制造工具 》定义函数 使用工具 》调用函数 二、定义函数 1.定义规则 函数的定义 ...
分类:
其他好文 时间:
2019-11-10 19:17:41
阅读次数:
87