-
什么是可中断锁?有什么用?怎么达成?
所属栏目:[语言] 日期:2021-11-06 热度:148
在 Java 中有两种锁,一种是内置锁 synchronized,一种是显示锁 Lock,其中 Lock 锁是可中断锁,而 synchronized 则为不可中断锁。 所谓的中断锁指的是锁在执行时可被中断,也就是在执行时可以接收 interrupt 的通知,从而中断锁执行。 PS:默认情况下 Lock[详细]
-
从 Hotspot 虚拟机角度来分析 Java 线程开启
所属栏目:[语言] 日期:2021-11-06 热度:119
基本概念 Java 线程其实是映射到操作系统的内核线程上的,所以 Java 线程基本上也就是操作系统在进行管理。在 Linux系统中,线程和进程用的是同一个结构体进行描述的,只不过进程拥有自己独立的地址空间,而同一个进程的多个线程之间是共享资源的。 简单说明[详细]
-
你清楚JDK版本相关特性吗?结果令人尴尬!
所属栏目:[语言] 日期:2021-11-06 热度:174
关于版本意识,尤其是初学者,很少有人会关注(很多三五年了,照样没怎么关注)。 为什么不关注呢?因为他们关注都是功能点或者知识点。 后来,逐渐的,一部分人在开发中就会遇到各种各样的问题,于是就开始关注版本了,而另外一部分人完全就是为了应付面试。 接[详细]
-
一文掌握 C++ 智能指针的应用
所属栏目:[语言] 日期:2021-11-06 热度:148
RAII 与引用计数 了解 Objective-C/Swift 的程序员应该知道引用计数的概念。引用计数这种计数是为了防止内存泄露而产生的。 基本想法是对于动态分配的对象,进行引用计数,每当增加一次对同一个对象的引用,那么引用对象的引用计数就会增加一次, 每删除一次[详细]
-
看完后让你成为武松,手把手教你打败Java中的纸老虎
所属栏目:[语言] 日期:2021-11-06 热度:155
泛型,其实算是Java当中比较难的语法了,很多人一开始都对其一知半解,也很害怕阅读带泛型的源码,虽然看起来语法很难,但当你理解后会觉得很简单,其实只是一个纸老虎罢了。下面,我将会用非常简单易懂的方式带你去理解它,相信你在认真看完后会有非常大的收[详细]
-
Gin 源码阅读之 Gin 与 Net/Http的联系
所属栏目:[语言] 日期:2021-11-06 热度:185
gin 是目前 Go 里面使用最广泛的框架之一了,弄清楚 gin 框架的原理,有助于我们更好的使用 gin。这个系列 gin 源码阅读会逐步讲明白 gin 的原理,欢迎关注后续文章。 gin 概览 想弄清楚 gin, 需要弄明白以下几个问题: request数据是如何流转的 gin框架到底扮[详细]
-
会诱发 Goroutine 挂起的 27个因素
所属栏目:[语言] 日期:2021-11-06 热度:150
上个月面向读者的提问,我们针对 goroutine 泄露中都会看到的大头 runtime.gopark 函数进行了学习和了解,输出了 《Goroutine 一泄露就看到他,这是个什么?》。 有小伙伴提到,虽然我们知道了 runtime.gopark 函数的缘起和内在,但其实没有提到 runtime.gopar[详细]
-
Python项目实操篇-常用验证码标注和识别
所属栏目:[语言] 日期:2021-11-06 热度:179
大家好,我是Snowball。 一、前言 今天给大家分享的实战项目是常用验证码标注识别,从想法诞生到实现思路,再到编码实战的整体过程,这个过程我前后整理了上万字,计划分章节来发布。言归正传,一起来看看今天的内容吧!今天这篇内容主要讲解这篇文章的创作灵[详细]
-
适合开发者的十大优质Python编译器
所属栏目:[语言] 日期:2021-11-06 热度:96
由Guido van Rossum于1991年创建的Python,如今已是发展最快、使用最广的编程语言之一。它可以在诸如:Web应用、桌面开发、机器学习、人工智能、数据分析、以及数据可视化等领域,得到广泛的使用。 值得注意的是,近年来,随着Python生态系统的不断发展壮大,[详细]
-
C#多线程研发之任务并行库
所属栏目:[语言] 日期:2021-11-06 热度:119
之前学习了线程池,知道了它有很多好处。 使用线程池可以使我们在减少并行度花销时节省操作系统资源。可认为线程池是一个抽象层,其向程序员隐藏了使用线程的细节,使我们可以专心处理程序逻辑,而不是各种线程问题。 但也不是说我们所有的项目中都上线程池,[详细]
-
几行Java代码弄完图片提取文字功能
所属栏目:[语言] 日期:2021-11-06 热度:139
近日浏览网上一些图片提取文字的网站,觉得甚是有趣,花费半日也做了个在线图片识别程序,完成了两个技术方案的选择,一是 tesseract + Python flask的方案实现,二是 tesseract + Spring web 的技术解决方案,并简作论述,与君共勉。 一、tesseract-ocr介绍[详细]
-
Spring Boot + MyBatis + MySQL达成读写分离!
所属栏目:[语言] 日期:2021-11-06 热度:64
1、引言 读写分离要做的事情就是对于一条SQL该选择哪个数据库去执行,至于谁来做选择数据库这件事儿,无非两个,要么中间件帮我们做,要么程序自己做。 因此,一般来讲,读写分离有两种实现方式。第一种是依靠中间件(比如:MyCat),也就是说应用程序连接到[详细]
-
写 Go 时怎样优雅地查文档
所属栏目:[语言] 日期:2021-11-06 热度:152
某天写代码时发现自己对 IDE 的依赖非常深,如果没了 Goland 就不会写代码了,心里为之一惊。 Goland 的自动补全功能已经是必需品了,只要打出相关的几个字符,不管是变量名还是函数调用,都能帮你直接补全。我们只需要往相应的位置填东西就行了。 进而又想到[详细]
-
利用PyPolars,让Pandas快三倍
所属栏目:[语言] 日期:2021-11-06 热度:97
Pandas是数据科学家处理数据的最重要的Python软件包之一。Pandas库主要用于数据探索和可视化,它随带大量的内置函数。Pandas无法处理大型数据集,因为它无法在CPU的所有核心上扩展或分布进程。 为了加快计算速度,您可以使用CPU的所有核心,并加快工作流程。[详细]
-
数据搬砖,我居然没动手!
所属栏目:[语言] 日期:2021-11-06 热度:86
自从我们的 Python技术 作为迁移后,大家留言互动好不热闹,感谢大家一如既往地支持,我将再接再厉,为大家提供更多更有用的文章。 今天我来分享一个迁移过程的幕后小故事,有料,有趣,来听听吧。 并不丝滑 迁移公众号,是一个腾讯提供的业务,就是将原公号[详细]
-
.NET 6 中哈希算法的简化用途
所属栏目:[语言] 日期:2021-11-06 热度:53
Intro 微软在 .NET 6 中引入一些更简单的 API 来使用 HMAC 哈希算法(MD5/SHA1/SHA256/SHA384/SHA512) 微软的叫法叫做 HMAC One-Shoot method, HMAC 算法在普通的哈希算法基础上增加了一个 key,通过 key 提升了安全性,能够有效避免密码泄露被彩虹表反推出真[详细]
-
手机摄影软件推荐 10分钟让你拍照技巧逼近大师实例教程
所属栏目:[语言] 日期:2021-06-08 热度:56
想要在10分钟的最短时间内快速提升摄影技巧?那摄影工具、色彩、构图一样都少不了,史上最简单易学的摄影教程,还不快围观占座[详细]
-
C#多线程和异步之Task和async/await分析
所属栏目:[语言] 日期:2021-06-04 热度:53
一、什么是异步 同步和异步主要用于修饰方法。当一个方法被调用时,调用者需要等待该方法执行完毕并返回才能继续执行,我们称这个方法是同步方法;当一个方法被调[详细]
-
入门篇Python发送Get请求之如何放请求头
所属栏目:[语言] 日期:2021-06-04 热度:120
目录 一、Python 命名规范 二、发送 get 请求 1.安装 requests 2.发送 get 请求 3.如何判断发送 get 请求要不要传请求头部? 4.传入请求头 5.权限被拒:403 - For[详细]
-
一文教你用Python实现批量文件的压缩处理
所属栏目:[语言] 日期:2021-06-04 热度:111
一、前言 大家好,我是崔艳飞。接到项目求助,需要对上千个文件夹中的文件进行压缩处理,并要删除源文件,只保留压缩后的压缩文件,数据量大,手动完成耗时耗力[详细]
-
一文掌握 Go 语言解密之上下文 Context
所属栏目:[语言] 日期:2021-06-04 热度:120
什么是 context Go 语言的独有的功能之一 Context,最常听说开发者说的一句话就是 函数的第一个形参真的要传 ctx 吗?,第二句话可能是 有没有什么办法不传,就能[详细]
-
一篇文章带你掌握Java中的抽象类和接口知识
所属栏目:[语言] 日期:2021-06-04 热度:139
一、抽象类 1.什么是抽象类? 凡是使用abstract关键字修饰的类就是抽象类。 2.假设在定义Animal类,定义一个shout()方法表示动物发出的叫声,我们知道不同动物它[详细]
-
在后台的Python:众多程序员无法解决的难题
所属栏目:[语言] 日期:2021-06-04 热度:101
先看两个超级简单的代码。 for iinrange(10**7): x=i%5 代码1:简单代码 defmain(): for iinrange(10**7): x=i%5 main() 代码2:定义了一个主函数来运行相同的简[详细]
-
Python骚操作从列表推导和生成器表达式出发
所属栏目:[语言] 日期:2021-06-04 热度:134
列表推导 Python语言魅力在于简洁,这能从最常见的创建列表体现出来,比如我们想把字符串abc转换成新列表[a, b, c],常规写法: symbols= abc codes=[] for symb[详细]
-
Java比C++慢?看了测试结果,推翻了我的认知,不得不说JIT真的强
所属栏目:[语言] 日期:2021-06-04 热度:161
1. 概述 编程语言根据其抽象级别进行分类。我们区分高级语言(Java,Python,JavaScript,C ++,Go),低级语言(汇编程序),最后是机器代码。 每个高级语言代码(例[详细]