- 博客(18)
- 资源 (1)
- 收藏
- 关注
原创 Edge浏览器缓存问题简直可怕
今天调试一个前端程序,怎么第都不对,请求压根没有变过,后来才发现是Edge浏览器的缓存问题简直令人发指,刷新了多少遍都没有用
2021-10-09 21:27:32
4618
4
原创 Java8并发编程——ConcurrentHashMap详细解读
1ConcurrentHashMap是一种多线程安全的集合类,主要用到的技术是数组+链表+红黑树+CAS+可重入锁,它是在HashMap的基础上,添加了一些操作来保证多程序情况下的安全。 ...
2020-05-03 21:19:01
542
原创 Python中zip文件解压中文乱码问题的彻底解决
python中的zipfile库在解压含有中文文件的压缩包的时候,中文文件名字会变成乱码 解决方法如下: 修改zipfile的源代码 在源代码中搜索字符串”cp347",你将会看到两个地方,分别在1330行和1510行附近 1330的代码如下: 上面这一端代码需要修改为: 1510的代码如下: 改为: 这种修改方法实际上是不断尝试文件名的编码方法,直到能...
2019-12-09 15:25:25
5043
原创 python使用flask获取浏览器上传的文件、python模仿浏览器上传文件
一 使用flask获取上传的文件 1 html的代码 <form enctype="multipart/form-data" method="post"action="http://127.0.0.1:12306/upload_material"> <input type="file" name="materials" id="user-pic...
2019-11-19 18:00:18
2093
原创 Java多线程ConcurrentHashMap深度解读
前言:ConcurrentHashMap是非常经典的一个类,面试中会被经常问到,因为它里面用了非常复杂的数据结构,设计上也非常精致,同时又涉及并发编程,可以说是个宝藏类,我会尝试解读一下这个类。 (我会抽空一直更新) 它的代码高达6300行 一 注释 我们来看一下类的注释: 上面贴出来的是第一段注释,后面我就不贴图了,直接翻译: 第一段:一个支持完全并发读和高期望并发更新的hash...
2019-10-16 11:34:21
654
原创 史上最详细的Java集合类ArrayList源代码逐行深入解读
(转载请附上链接:https://blog.csdn.net/brucexiajun/article/details/101209837) 前言:ArrayList是Java集合类中非常常见的一个类,而且比较基本,不会太难,源代码1500行左右,非常适合新手开始练习源代码的阅读能力。 本文将会尽可能详细的剖析ArrayList类的源代码,文章会陆续更新。 一 注释 我们先从注释开始 ...
2019-09-23 19:59:15
617
原创 非常详细的Java的Integer类的parseInt方法源代码解析(JDK1.8,逐行解释,包括注释)
parseInt()方法是将字符串转换成整数的方法,下面剖析它的源代码: 首先,方法的定义如下: 这是一个类方法,意味着可以直接通过Integer类调用 参数s是要被转化的字符串,参数radix是进制,比如10表示将s按照10进制去理解。 step1:先看注释 以第二个参数进制为基准,将string参数解析为有符号整数。在该进制的情况下,这个字符串必须全部是数字(就是说1...
2019-09-19 11:53:59
2383
原创 opencl中原子锁的使用
opencl的核函数执行的是并行操作,因为每一个核函数执行的是一个细粒度的操作,所以当核函数执行的时候,相当于多个线程同时执行一个函数,区别就是这些线程输入给函数的参数不一样,比如对于一个图像10*10的图像,同时有100个线程操作,每一个线程操作一个像素,当然必须是不同的像素,所以不能有并发写的情况发生。 比如下面的核函数: __kernel void sync_write(__globa...
2019-09-16 20:24:53
1157
原创 C语言版本的opencl的用法
本文介绍一下C语言使用Opencl的基本步骤,系统是windows10,IDE是Visual Studio2017。 step1:你需要安装一下opencl的windows版本,然后新建一个工程,在属性管理器里面给这个工程导入opencl的头文件。 step2:导入头文件 #include <iostream> #include <fstream> #incl...
2019-09-16 19:55:57
2376
原创 全网第一个c++版本的opencl编程详解(gpu编程)
本文主要讲解opencl在windows下,使用cpp编程的基本过程,使用的IDE是Visual Studio 2017。 下面的代码连在一起就可以运行 step1:新建工程,导入头文件 在VS上新建一个工程,然后配置相关的头文件:视图->其它窗口->属性管理器,然后配置一些项,目的是将opencl的头文件导入这个cpp工程里面。(这里不介绍了,有很多现成的文章) step2:...
2019-09-16 18:00:41
5503
3
原创 Numpy的基本使用详解-机器学习基础(代码均可独立运行)
Numpy是一个Python语言下的矩阵运算的包,因为机器学习中会涉及一些非常复杂的矩阵运算,使用基本的pyhon中的数据结构操作起来很麻烦,于是就诞生了很多矩阵运算的专用包,Numpy是其中使用最多的一个,举个例子,opencv的python版本中就是用了Numpy矩阵来表示图片: 我们来看一下打印结果: 本文目的是介绍Numpy最常见的一些用法,我会尝试使用最简短的代码解释清楚Nu...
2019-09-12 19:33:19
431
原创 C++文件读写的基本操作详解-ifstream、ofstream的用法
下面由浅入深介绍一下C++中文件的读写操作,每一段代码都可以单独运行,我会试图以最短的代码解释清楚基本的读写操作。 1 文本文件的基本写操作 功能:向文件 myfile.txt 中写入数据。 代码: #include <fstream> #include <string> using namespace std; int main() { ofstream ou...
2019-09-06 20:31:43
3419
原创 从验证码破解谈卷积神经网络
大家先别急着看,我还没有写完,抱歉今天很忙,后面一定会更新。 卷积神经网络(CNN)是一种在计算机视觉领域应用非常广的深度学习框架,我前前后后大概花了一个礼拜的时间,基本上搞懂了CNN的原理,在这里做个记录,也算是分享一下自己的见解。 一 基础知识 1 关于图像 这里说的验证码指的是验证码所在的图片,计算机中的图片都是由一个一个的像素点构成,可以 把像素点看成是组成图片的最小单位,右键w...
2018-12-02 18:53:51
597
1
原创 Java多线程——ArrayBlockingQueue的使用
最近找实习,发现各大公司对Java的多线程爱的很深沉,遂决定开扒java.util.concurrent包,防止自己忘了,也给初学者一个参考。以下内容都来自官方的API,例子是我自己造的。今天的主角是ArrayBlockingQueue。一 位置知道它实现了抽象类BlockingQueue即可,和它一样的小伙伴很多二 定义我只截取了第一段,以后都不截图了,需要的自己下载一个j2se7.chm就行了...
2018-04-20 16:35:29
11142
1
原创 在spring mvc中实现JSR303验证并将验证结果传回给视图层
一 先上效果图:这是注册前 没有填写登录名,点击注册 显示用户名不能为空,实现方式是JSR303。 二 代码如下 这里不给出所有的代码,因为篇幅有限,给出和实现验证功能有关的代码 1 在user-servlet.xml中添加 2 在register.php添加 和 学号 : 登录名 :
2016-06-11 23:34:05
1825
原创 Spring之Referenced file contains error问题的解决
做spring mvc开发时在写配置文件时出现的问题,Referenced file contains errors (http://www.springframework.org/schema/beans/spring-beans-3.1.xsd). 在网上找了很多解决方案,大都是你抄我,我抄你,根本没有用,错误如下 后来与以前的工程对比,才知道spring-beans.xsd这样
2016-05-21 19:46:45
3004
1
java冒泡排序,插入排序,堆排序源码(终端输入,可以选择排序方法)
2015-04-02
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅