-
10分钟做完Java线程池,yyds!!
所属栏目:[语言] 日期:2021-11-05 热度:145
最近有不少小伙伴私信我说:看了我在【精通高并发系列】文章中写的深度解析线程池源码部分的文章,但是还是有些不明白线程池的实现原理。问我能不能手写一个简单的线程池,帮助读者深刻理解线程池的原理。 这不,我熬夜肝了这篇文章。 在【精通高并发系列】[详细]
-
C++20新特性的小细节,你学会了吗?
所属栏目:[语言] 日期:2021-11-05 热度:176
之前我整理过一篇C++20新特性的文章全网首发!!C++20新特性全在这一张图里了,里面提到过latch、barrier和semaphore,但是没有详细介绍过三者的作用和区别,这里详细介绍下。 latch 这个可能大多数人都有所了解,这就是我们经常会用到的CountDownLatch。用于[详细]
-
一日一技 怎样让Python提醒你不能覆盖某个父类方法?
所属栏目:[语言] 日期:2021-11-05 热度:78
在前几天的文章:一日一技:在 Python 里面如何实现一个抽象类中,我们讲到Python 可以实现一个抽象类。抽象类里面有一些抽象方法,在继承这个抽象类的时候,子类必须实现这些抽象方法。 有时候,我们希望在父类中保留一些方法,子类在继承父类的时候,不准[详细]
-
Python3.10稳定版正式推出,带来急需的新功能和改进
所属栏目:[语言] 日期:2021-11-05 热度:142
Python 3.10 具有强大的模式匹配功能、更好的错误报告等。这是最吸引人的新特性。Python 现在需要OpenSSL 1.1.1 或更新版本。不再支持旧版本。这会影响 hashlib、hmac 和 ssl 模块,并使 CPython 的关键依赖项之一现代化。经过多次 alpha、beta 和 rc 测试,[详细]
-
Go 语言把类型放在后面的原因
所属栏目:[语言] 日期:2021-11-05 热度:54
大家好,我是煎鱼。 前段时间看到大家在吵一个话题,那就是 Go 语言的类型声明,抠知识抠的非常细了,就是为什么他要放在后面,展开了热烈的讨论。 示例代码如下: var a []string var b []string 其实在早年 Go 官方估计已经被问烦了,写过一篇《Gos Declar[详细]
-
C++怎样调用写好的C接口?
所属栏目:[语言] 日期:2021-11-05 热度:133
前言 如何在C++代码中调用写好的C接口?你可能会奇怪,C++不是兼容C吗?直接调用不就可以了,那么我们来测试一下,先看看C++如何调用C代码接口的。 C++调用C文件 一个C语言文件test.c #include stdio.h void print(int a,int b) { printf(这里调用的是C语言的[详细]
-
在 Linux 上使用 jps 命令查看 Java 进程
所属栏目:[语言] 日期:2021-11-05 热度:180
系统上运行着诸多进程,通过 jps 命令能够快速有效识别 Java 进程。 在 Linux 中,有一些用于查看系统上运行进程的命令。进程是指由内核管理的正在进行的事件。每启动一个应用程序时,就会产生一个进程,但也有许多在计算机后台运行的进程,如保持系统时间准[详细]
-
【方向盘】版本历史代码范例之JavaMail、JDBC
所属栏目:[语言] 日期:2021-11-05 热度:168
前言 若你还不太清楚Java EE是什么,可先移步这里:什么是Java EE? 发邮件是企业级应用开发的刚性需求,如:每晚定时任务跑完后自动将结果数据发封邮件到领导邮箱供以查阅。邮件虽然古老,但相较于IM消息具有很多不可替代的优势: 更为正式:相对重要的场合/[详细]
-
Python异常还能写得这般优雅!
所属栏目:[语言] 日期:2021-11-05 热度:150
在写程序时,我们会经常碰到程序出现异常,这时候我们就不得不处理这些异常,以保证程序的健壮性。 处理异常的版本有以下几种,你通常的做法是哪种? 不负责任版本 这种情况下,不作任何处理,任由程序报错,从而导致程序中断。 针对简单的程序,这样做没什么[详细]
-
使用Python可视化图表解析行程数据
所属栏目:[语言] 日期:2021-11-05 热度:187
最近一直在想怎么分析一下个人的行程数据,看看能够从行程数据里面分析出点什么来。最开始我的期望还是蛮高的,有如下的一些预期: 根据出行时间范围,可以基本确定他的生活节奏,工作强度 能够通过行程时间范围来猜测汽车尾号 根据出行的耗时历史来建议出行[详细]
-
NetBeans、Eclipse和IntelliJ,什么才是最优秀的Java IDE?
所属栏目:[语言] 日期:2021-11-05 热度:63
众所周知,集成开发环境(IDE)能够让程序员的日常编程过程,比起直接在文本编辑器上编写代码要容易得多。它不但可以及时推送各种代码建议,并且能够高亮地显示代码中的各种错误,最终让程序员交付出高质量的程序。 而作为具有出色的开发能力的编程语言,Java[详细]
-
Golang 语言怎样编写测试代码?
所属栏目:[语言] 日期:2021-11-05 热度:187
01介绍 我们使用 Golang 语言开发的项目,怎么保证逻辑正确和性能要求呢?也就是说我们如何测试我们的 Golang 代码呢?在 Golang 语言中,可以使用标准库 testing 包编写单元测试和基准测试,使用 go test 命令执行单元测试和基准测试的代码。本文我们介绍在 G[详细]
-
对象选择器自动解引用是何?
所属栏目:[语言] 日期:2021-11-05 热度:184
从一个结构体实例对象中获取字段的值,通常都是使用 . 这个操作符,该操作符叫做 选择器。 选择器有一个妙用,可能大多数人都不清楚。 当你对象是结构体对象的指针时,你想要获取字段属性时,按照常规理解应该这么做 type Profile struct { Name string } fu[详细]
-
怎样在 Linux 上手动安装 Java
所属栏目:[语言] 日期:2021-11-05 热度:82
手动安装可以让用户更好的控制 Java 运行时环境。 使用 Linux 发行版的软件包管理工具来安装 Java 软件包 是很容易的。然而,有时你需要手动安装 Java。这对基于 Java 的应用服务器(如 Tomcat 或 JBoss)的管理员特别重要。许多开源和专有软件产品都依赖于[详细]
-
Go之奇闻 · Go源码里面藏匿着这么大的瓜!
所属栏目:[语言] 日期:2021-11-05 热度:71
今天无意间发现Github上的go[1]代码仓库有一个很有意思的# issue 48886[2],这不知道是不是吃了Golang的一个瓜? 这么重量级的项目,肯定有人会紧急修复,尝试提交PR的,看看PR中记录貌似已经有人尝试修复了。动作很快啊!! 像这种古老级别的代码,估计当时也[详细]
-
Java进阶之深入理解负载均衡的五种算法完成原理
所属栏目:[语言] 日期:2021-11-05 热度:128
前言 什么是负载均衡: 指由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。通过某种 负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务[详细]
-
ArrayList 重拳出击,把 LinkedList 打倒在地
所属栏目:[语言] 日期:2021-11-05 热度:199
如果再有人给你说 ArrayList 底层是数组,查询快、增删慢;LinkedList 底层是链表,查询慢、增删快,你可以让他滚了! 这是一个极其不负责任的总结,关键是你会在很多地方看到这样的结论。 害,我一开始学 Java 的时候,也问过一个大佬,ArrayList 和 LinkedLi[详细]
-
Python中令人迷惑的操作符
所属栏目:[语言] 日期:2021-11-05 热度:151
操作符对于现代编程来说绝对是一个至关重要的组成部分。它们通常用于数学运算。Python编程语言有一系列不同的操作符,并且不断添加新的操作符。 有一个运算符具有一些相当有趣的功能和特点,那就是加等运算符。乍一看,这似乎只是加法和等于操作符的基本组合[详细]
-
Golang 语言如何高效拼接字符串?
所属栏目:[语言] 日期:2021-11-04 热度:79
01介绍 在编程语言中,字符串是一种重要的数据结构。在 Golang 语言中,因为字符串只能被访问,不能被修改,所以,如果我们在 Golang 语言中进行字符串拼接操作,Golang 需要进行内存拷贝。 如果读者朋友们了解过 Golang 语言内存管理的相关知识,就会知道内[详细]
-
EasyC++,C++ 中的 For 重复
所属栏目:[语言] 日期:2021-11-04 热度:82
大家好,我是梁唐。 这是EasyC++系列的第19篇,简单聊聊C++当中的for循环。 想要追求更好阅读体验的同学,可以点击文末的「阅读原文」,访问github仓库。 for 循环 在编程当中我们经常会遇到需要重复执行的步骤,想要让计算机能够重复执行某些逻辑,就需要使[详细]
-
惊奇时刻!总结哪些让你大呼真牛的 Python 代码!
所属栏目:[语言] 日期:2021-11-04 热度:183
Python 作为一个设计优美的高级语言,提供了很多简单易用的特性,但简单并不意味着容易理解,有时候一些输出结果对于刚入门的小伙伴并不是很明了,反而似乎有点反人类。 今天派森酱就整理了一些非常有趣的例子,事实上这些例子不仅有趣,甚至还可以加深你对[详细]
-
Go内存中的接口种类
所属栏目:[语言] 日期:2021-11-04 热度:107
前言 抽象来讲,接口,是一种约定,是一种约束,是一种协议。 在Go语言中,接口是一种语法类型,用来定义一种编程规范。 在Go语言中,接口主要有两类: 没有方法定义的空接口 有方法定义的非空接口 之前,有两篇图文详细介绍了空接口对象及其类型: 【Go】内[详细]
-
Python 标准库中十分有用的装饰器
所属栏目:[语言] 日期:2021-11-04 热度:155
众所周知,Python 语言灵活、简洁,对程序员友好,但在性能上有点不太令人满意,这一点通过一个递归的求斐波那契额函数就可以说明: def fib(n): if n = 1: return n return fib(n - 1) + fib(n - 2) 在我的 MBP 上计算 fib(40) 花费了 33 秒: import time[详细]
-
高级Java思考笔记之反射的基本原因之一
所属栏目:[语言] 日期:2021-11-04 热度:156
原来我一直将java当做不用delete的c++来用,但是最近在工作上遇到一些问题,发现这样的做法不管用,因为工作上遇到的java代码采用了很多框架,例如spring boot之类。当我想深入了解这些框架的设计原理时发现,如果不了解java的高级语法特性,这些框架的设计[详细]
-
一篇文章带你清楚Go语言基础之函数
所属栏目:[语言] 日期:2021-11-04 热度:99
上次主要回顾 上述我们知道,定义一个函数,可以将函数内存分配理解如下。 同时我们也知道,无论进行什么操作,只会操作栈上面的值。 函数和变量 函数名即变量 不知道你想过没,定义一个变量,接收一个函数,就像这样。 package main import fmt func say()[详细]
