有类A和类B,分别有a();和b();方法。其中a()中会调用b()方法 如果b()方法的执行时间较短的话,可以不用管其他,这样调用就好。但是,如果执行时间较长的话,a()方法里往下的代码无法继续执行,会一直等待b()方法执行完事。这就是方法的同步调用。缺点是,一个方法执行时间长或阻塞,会造成整个a ...
分类:
编程语言 时间:
2019-09-03 09:57:46
阅读次数:
84
前言 在开发十万博客系统的的过程中,前面主要分享了爬虫、缓存穿透以及文章阅读量计数等等。爬虫的目的就是解决十万+问题;缓存穿透是为了保护后端数据库查询服务;计数服务解决了接近真实阅读数以及数据库服务的压力。 架构图 限流 就拿十万博客来说,如果存在热点文章,可能会有数十万级别的并发用户参与阅读。如果 ...
分类:
编程语言 时间:
2019-09-03 09:58:49
阅读次数:
195
``` # 线程隔离 from werkzeug.local import LocalStack import threading # 首先实例化 my_stack = LocalStack() my_stack.push(1) # 主线程入栈 def worker(): print("in wor... ...
分类:
编程语言 时间:
2019-09-03 09:59:39
阅读次数:
120
qsort函数 qsort(数组名,大小,sizeof,cmp) a-b默认从小到大排序 1. int cmp(const void *a,const void *b){ stu *s1=(stu *)a; stu *s2=(stu *)b; return s1->score-s2->score;} ...
分类:
编程语言 时间:
2019-09-03 10:00:39
阅读次数:
121
记得很早很早之前有过一次面试,面试前端说自己喜欢JavaScript,然后面试官问,你知道当前JavaScript最新标准和规范吗?我无言以对,因为平时没有关注认真对待这些信息,然后就没有然后了。或许是从那时起我开始重视对自己所用技术最新动态的关注,至少它主要版本特性还是要了解的,不光是为了与人交流... ...
分类:
编程语言 时间:
2019-09-03 10:03:09
阅读次数:
89
题目描述 122. 买卖股票的最佳时机 II 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [7, ...
分类:
编程语言 时间:
2019-09-03 10:04:12
阅读次数:
152
“猴子补丁”就是指,在函数或对象已经定义之后,再去改变它们的行为。 举个例子: import datetime datetime.datetime.now = lambda: datetime.datetime(2012, 12, 12) 大部分情况下,这是种很不好的做法 - 因为函数在代码库中的行 ...
分类:
编程语言 时间:
2019-09-03 10:04:51
阅读次数:
148
spring应该是java最火的框架了,之前写过几篇spring的入门,但都写的太简单,也不够详细。这里专门开一个分类,详细介绍下spring传统的框架。未来使用spring boot也会更加了解底层的原理 spring最核心的就是控制反转和依赖注入,依赖注入是控制反转的一个具体的例子 Spring ...
分类:
编程语言 时间:
2019-09-03 10:05:05
阅读次数:
100
Json 简介 Json (JavaScript Object Notation) 是一种轻量级的数据交换格式。它作为目前最欢迎的数据交换格式,也是各大开源贡献者的必争之地,如:阿里爸爸的 fastjson(java),腾讯的 rapidjson(c++) 等。但 .Net 却没有得到大厂的青睐,在 ...
分类:
编程语言 时间:
2019-09-03 10:06:12
阅读次数:
594
1.Array.from() 方法,用于数组的浅拷贝。就是将一个类数组对象或者可遍历对象转换成一个真正的数组。eg: tips: 1. object中必须有length属性,返回的数组长度取决于length长度 2.key 值必须是数值 2.Object.values(object)tips:与第一 ...
分类:
编程语言 时间:
2019-09-03 10:08:01
阅读次数:
367
泛型入门 我们在学习集合的时候,会看到如下图的警告: 集合有一个特点——当你把对象丢进集合中,集合就会“忘记”这个对象的类型,而把它当做Object类型来处理。这样当程序员不小心将不同类型的数据丢进同一个集合中时就会出现错误。 从Java5以后,Java引入了“参数化类型”的概念,允许程序在创建集合 ...
分类:
编程语言 时间:
2019-09-03 11:17:21
阅读次数:
70
一上来就给了两个文件,一个是加密的源代码,一个是加密过程文件,challenge.pyN1ES.pyN1ES.py里一共有四个函数,一个类,类里含有两个函数,除了最后一个encrypt函数外其他函数都是在对key进行运算,然后通过key来对flag进行加密,所以我直接跑了一下程序,获得了key加密后的数据,然后只对encrypt函数进行逆向解密脚本:Kn=[[‘~‘,‘w‘,‘Y‘,‘k‘,‘k‘
分类:
编程语言 时间:
2019-09-03 11:18:23
阅读次数:
71
一、B树 B树是一种多叉平衡查找树,由于是多叉结构,对于元素数量非常多的情况下,树的深度不会像二叉结构那么大,可以保证查询效率。 二、B+树 B+是是B树的一种变形, 1、特点: (1)、所有叶子结点包含全部关键字信息,及指向含有这些关键字记录的指针,且叶子节点中关键字进行有序链接。 (2)、非叶子 ...
分类:
编程语言 时间:
2019-09-03 11:19:32
阅读次数:
104
# python终端显示彩色字符类,可以调用不同的方法# 选择不同的颜色.使用方法看示例代码就很容易明白.# ## 显示格式: \033[显示方式;前景色;背景色m# # 显示方式 说明# 0 终端默认设置# 1 高亮显示# 4 使用下划线# 5 闪烁# 7 反白显示# 8 不可见# 22 非粗体# ...
分类:
编程语言 时间:
2019-09-03 11:23:45
阅读次数:
92
链接:https://blog.csdn.net/u013894427/article/details/83827173 pthread 入口函数类型说明void * func1(void * t)void* 表示无类型指针 void*作为函数参数,表示函数接收一个指针,不管是什么类型的指针都可以, ...
分类:
编程语言 时间:
2019-09-03 11:24:45
阅读次数:
103
一、为什么使用模板?? 使用模板的目的是为了避免重复声明和定义一系列基本功能相同的函数或者类,其区别因传入参数的不同而产生不同类型的数据,其基本工作过程都是一致的! 二、调用模板函数产生不明确问题 (1)template declarations are only permitted at glob ...
分类:
编程语言 时间:
2019-09-03 11:25:52
阅读次数:
161
在springboot中,默认继承好了一套完好的redis包,可以直接使用,但是如果使用中出了错不容易找到错误的原因,因此这里使用自己配置的redis; 需要使用的三个主要jar包: <dependency> <groupId>redis.clients</groupId> <artifactId> ...
分类:
编程语言 时间:
2019-09-03 11:29:56
阅读次数:
115
最早学习spring的时候,老是搞不清楚什么是spring什么是spring mvc。看好多人创建项目的教程也是不知道其中的原理,只是生搬硬套的照做,其实就是对spring体系不是太了解。上一节已经说了spring的核心是核心容器,所以只要导入了context的包就算是一个spring项目了。当然还 ...
分类:
编程语言 时间:
2019-09-03 11:33:15
阅读次数:
84
1.字符串切片操作: ...
分类:
编程语言 时间:
2019-09-03 11:39:04
阅读次数:
75
1.List<Map<String,String>> listObjectSec = JSONArray.parseObject(strArr,List.class); for(Map<String,String> mapList : listObjectSec){ for (Map.Entry e ...
分类:
编程语言 时间:
2019-09-03 11:39:58
阅读次数:
70