编程语言

python多线程+GIL

08-22
---恢复内容开始--- python的多线程实际上只有一个线程. 了让各个线程能够平均利用CPU时间,python会计算当前已执行的微代码数量,达到一定阈值后就强制释放GIL.而这时也会触发一次操作系统的线程调度(当然是否真正进行上下文切换由操作系统自主决定). GIL全局解释器锁: 保证同一时间只有一个线程得到数据并且只有一个线程执行,但是cpu调度时间到了以后,第一个线程无论是否完成均程等待状态(若未执行完毕,数据放入寄存器中)下一线程得到的依旧是原始的公共数据. 用户级lock:保证同一

(3) python--matplotlib

08-22
(一)1.如何绘制散点图 1 2 3 4 5 6 7 8 9 10 11 12 import numpy as np import matplotlib.pyplot as plt # 如何绘制散点图 # 先随机生成数据 x = np.array(range(100)) y = np.sin(x) # 直接输入x和y便可绘制相应的散点图 plt.scatter(x, y) # 不要忘了这句话,表示让图像显示 plt.show() 可以看到类似于正弦曲线一样的点 (一)2.如何给散点图加上样式 1

C++之重载运算与类型转换

08-22
重载的运算符是具有特殊名字的函数:他们的名字是由关键字operator和其后定义的运算符号共同组成.重载运算符也包含返回类型.参数列表和函数体. 重载运算符的参数数量与该运算符作用的运算对象数量一样多.一元运算符有一个参数.二元运算符有两个参数.对于二元运算符来说,左侧对象传递给第一个参数,而右侧对象传递给第二个参数.除了operator(),其他重载运算符不能含有默认实参. 如果一个运算符函数是成员函数,则它的第一个(左侧)运算对象绑定到隐式的this指针上,因此成员运算符函数的参数数量比运算

C++软件开发面试题总结

08-22
面试题有难有易,不能因为容易,我们就轻视,更不能因为难,我们就放弃.我们面对高薪就业的态度永远不变,那就是坚持.坚持.再坚持.出现问题,找原因:遇到困难,想办法.我们一直坚信只有在坚持中才能看到希望,而不是看到希望才去坚持. 人生没有如果,只有结果和后果.既然选择了,就不后悔.年轻就是资本,年轻就要吃苦,就要历练.就要学会在坚持中成长.如此感慨,至深的心得体会,绝对的经验之谈. 1. Static有什么用途? (1)函数体内static变量的作用范围是该函数体,该变量的内存只被分配一次,因此它的

java深拷贝的实现

08-22
在有些业务场景下,我们需要两个完全相同却彼此无关的java对象.比如使用原型模式.多线程编程等.对此,java提供了深拷贝的概念.通过深度拷贝可以从源对象完美复制出一个相同却与源对象彼此独立的目标对象.这里的相同是指两个对象的状态和动作相同,彼此独立是指改变其中一个对象的状态不会影响到另外一个对象.实现深拷贝常用的实现方式有2种:Serializable,Cloneable.        Serializable方式就是通过java对象的序列化和反序列化的操作实现对象拷贝的一种比较常见的方式.

蚂蚁金服经典技术面试题:Tomcat+Redis+线程池与锁+MQ实现

08-22
一面:技术面 1.讲一下项目 2.做的主要是Java对吧,讲一下多线程把,用到哪些写一下 3.写了thread和runnable,然后写了线程池,又问了线程池由哪些组件组成,有哪些线程池,分别怎么使用,以及拒绝策略有哪些. 4.什么时候多线程会发生死锁,写一个例子吧,然后我写了一个两个线程,两个锁,分别持有一个,请求另一个的死锁实例. 5.集合类熟悉吧,写一个题目,一个字符串集合,找出pdd并且删除. 6.然后说一下Redis吧,是单线程还是多线程,Redis的分布式怎么做? 7.RPC了解么,

python将数据输出到excel中

08-22
import xlsxwriter workbook = xlsxwriter.Workbook('hello.xlsx') # 建立文件 worksheet = workbook.add_worksheet() # 建立sheet, 可以work.add_worksheet('employee')来指定sheet名,但中文名会报UnicodeDecodeErro的错误 worksheet.write('A1', 'Hello world') # 向A1写入 worksheet.write(1,

Spring框架学习总结(一)

08-22
1.IOC:控制反转 将bean的生命周期交给容器管理,通俗讲就是实例对象不需要通过new去创建,而是由Spring容器启动的时候去创建,使用者只需要通过特定注解或者其它方式直接调用容器里创建好的实例就可以了. 2.依赖注入常用的注入方式 1).构造注入:通过构造器实现注入,需要注意的是构造器中的形参的名称需要与配置项中的name属性值对应: xml配置文件: 2).设值注入:通过setter方法注入获取实例,setter方法名称要与配置项中的name属性值相匹配: xml配置文件: 3.Bea

python3.6.6在CentOS7上的安装

08-22
Python官网:https://www.python.org/ 下载指定版本的软件包: [[email protected] data]# yum clean all  &&  yum repolist     #配置yum源,以便安装依赖软件包 [[email protected] data]# yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk

Java Web学习(五)认证机制三巨头--session、cookie、token

08-22
一.引言 动态网页兴起后,会话管理变成开发者需要考虑的一个问题,由于HTTP请求是无状态的,为了区分每个用户,此时引入了会话标识(session id)的概念,但是存储机制也会产生不同的问题,下面就详细分析一下三种机制的优缺点以及使用方式. 二.session 定义:会话,打开web应用时产生,浏览器第一次访问服务器会在服务器端生成一个session,有一个sessionid和它对应. 创建:session在访问tomcat服务器时调用HttpServletRequest.getSession(

Spring Security 解析(二) —— 认证过程

08-22
Spring Security 解析(二) -- 认证过程 ??在学习Spring Cloud 时,遇到了授权服务oauth 相关内容时,总是一知半解,因此决定先把Spring Security .Spring Security Oauth2 等权限.认证相关的内容.原理及设计学习并整理一遍.本系列文章就是在学习的过程中加强印象和理解所撰写的,如有侵权请告知. 项目环境: JDK1.8 Spring boot 2.x Spring Security 5.x 一.@EnableGlobalAuth

在notepad++中运行perl和python的方法

08-22
1.打开notepa++按F5 在对话框中输入cmd /k C:\Strawberry\perl\bin\perl.exe "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE & EXIT 保存之后 运行2,cmd /k C:\Program File(x86)\python\...(python运行程序文件路径) "$(FULL_CURRENT_PATH)" & ECHO. & PAUSE &

JAVA 基础编程练习题27 【程序 27 求素数】

08-22
27 [程序 27 求素数] 题目:求 100 之内的素数 package cskaoyan; public class cskaoyan27 { @org.junit.Test public void prime() { int mix = 1; int max = 100; for (int i = mix; i <= max; i++) { if (isPrime(i)) { System.out.println(i); } } } private boolean isPrime(int

C++ string和int互相转换

08-22
int转string int aa = 30; stringstream ss; ss<<aa; string s1 = ss.str(); cout<<s1<<endl; // 30 string s2; ss>>s2; cout<<s2<<endl; // 30 string转int string s = "17"; stringstream ss; ss<<s; int i; ss>>

合并多个jar包,并通过私服依赖

08-22
背景:许多jar包在maven仓库中没有,项目如果添加了许多的本地jar包,别人拿到代码也无法编译 需求:将本地jar包上传至私服并设置依赖,如果jar包较多,但都从属于同一功能,需要合并为一个jar包 方法: 一.合并jar包 1.将要合并的JAR包放到同一个文件夹下:    2.进入命令行:        3.定位到当前文件夹: 4.通过jar解压命令将jar包全部解压,命令为 >jar –xvf xx.jar;注意:此处有想要合并多少jar就需要解压多少次. 5.删除目录下的.jar文件,

C++ 编译器小结

08-22
Topic: 1.VS 中的cl.exe 是啥? 2.目前主流编译器有哪些? GCC,LLVM,Clang编译器对比 https://www.cnblogs.com/qoakzmxncb/archive/2013/04/18/3029105.html https://zhuanlan.zhihu.com/p/21889573  3.Windows 下脱离 Visual Studio IDE,在命令行下编译 CUDA 文件 nvcc 编译器虽说是 .cu 的编译器,但是它还是要调用 VC 编译器

纯数据结构Java实现(5/11)(Set&amp;Map)

08-22
纯数据结构Java实现(5/11)(Set&Map) Set 和 Map 都是抽象或者高级数据结构,至于底层是采用树还是散列则根据需要而定. 可以细想一下 TreeMap/HashMap, TreeSet/HashSet 的区别即可 只定义操作接口(操作一致),不管具体的实现,所以即便底层是 BST 亦可(只是效率不高) (我还是直说了吧,如果不要求有序,尽量用 Hash 实现的吧) 集合(Set) 二分搜索树不存放重复元素,所以 BST 就是一个很好的用于实现集合的底层结构 常见应用 其实主要

python--&gt;hashlib模块和hmac模块

08-22
目录 一.hashlib模块 1.0.1 hashlib是什么 1.0.2 撞库破解hash算法加密 二.hmac模块 目录 一.hashlib模块 密码加密:无论你丢什么字符串,他都会返回一串 固定长度的字符串 变成固定的字符串 相同的字符串哈希后结果一样 叠加性 1.0.1 hashlib是什么 hash是一种算法(Python3.版本里使用hashlib模块代替了md5模块和sha模块,主要提供 SHA1.SHA224.SHA256.SHA384.SHA512.MD5 算法),该算法接受传

go语言语法记录

08-22
go 基本语法 变量 变量类型 变量类型有哪些? var value string = "haha 包内变量 不可以使用:=符号来定义变量 函数内变量 可以使用 :=定义,然后只在函数内有效 定义即需要使用 自动类型推断 var value = "haha value := "haha 强制类型转换 c = int(math.Sqrt(float64(a*a+ b*b))) 常量的定义 const filename = 'abc.txt' const 数值可以作为各种类型使用

python应用airtest库的环境搭建

08-22
参考https://blog.csdn.net/ywyxb/article/details/64126927 注意:无论是在线还是离线安装,最好在管理员权限下执行命令 1.安装Python36(32位),配置环境变量C:\Python36;C:\Python36\Scripts;C:\Python36\Lib\site-packages; 2.安装setuptools(到文件目录下执行Python setup.py install) 3.安装pip(到文件目录下执行Python setup.py