-
如何在 Linux 上手动安装 Java
所属栏目:[语言] 日期:2021-11-03 热度:148
手动安装可以让用户更好的控制 Java 运行时环境。 使用 Linux 发行版的软件包管理工具来安装 Java 软件包 是很容易的。然而,有时你需要手动安装 Java。这对基于 Java 的应用服务器(如 Tomcat 或 JBoss)的管理员特别重要。许多开源和专有软件产品都依赖于[详细]
-
Go:对象选择器自动解引用是什么?
所属栏目:[语言] 日期:2021-11-03 热度:82
从一个结构体实例对象中获取字段的值,通常都是使用 . 这个操作符,该操作符叫做 选择器。 选择器有一个妙用,可能大多数人都不清楚。 当你对象是结构体对象的指针时,你想要获取字段属性时,按照常规理解应该这么做 type Profile struct { Name string } fu[详细]
-
Golang 语言怎么编写检测代码?
所属栏目:[语言] 日期:2021-11-03 热度:183
介绍 我们使用 Golang 语言开发的项目,怎么保证逻辑正确和性能要求呢?也就是说我们如何测试我们的 Golang 代码呢?在 Golang 语言中,可以使用标准库 testing 包编写单元测试和基准测试,使用 go test 命令执行单元测试和基准测试的代码。本文我们介绍在 Gol[详细]
-
用 jconsole 在 Linux 上监控你的 Java
所属栏目:[语言] 日期:2021-11-03 热度:171
如何使用 Java 开发工具包中的 Java 监控和管理控制台。 Java 开发工具包(JDK)提供了开发 Java 应用程序的二进制文件、工具和编译器。其中一个有用的工具是 jconsole。 为了演示,我将使用 WildFly J2EE 应用服务器,它是 JBOSS 开源应用服务器项目的一部[详细]
-
Python 3.10的几个好用的全新特性
所属栏目:[语言] 日期:2021-11-03 热度:81
Python 3.10已经在10月4日发布了,要不要更新呢? 3.10版没有添加新的模块,但是引入了很多新的并且有用的特性。让我们来一起看看吧。 更详细语法错误提示信息 在调试代码时,能够提供更多的错误新信息和提示了,报告可以指出错误的语法,而不仅仅是提供Synta[详细]
-
Go语言其程序符号重命名
所属栏目:[语言] 日期:2021-11-03 热度:93
Go程序源代码中,关键字、接口、类型、常量、变量、方法、函数、字段、标签(label)等等的名称都可以称为符号。 Go可执行程序中,符号表主要包含两种类型的符号: 数据对象(Data object) 函数(Function) 一般情况下(不是绝对的),在源代码编译为可执行程序的[详细]
-
C++入口不是main?知乎上掐起来了!
所属栏目:[语言] 日期:2021-11-03 热度:105
你说main函数是入口,那main是被谁调用的呢? 他说mainCRTStartup是入口,那mainCRTStartup又是被谁调用的呢? 从进程创建说起 一切的一切,让我们从创建进程开始说起。 进程创建完成后,接着会创建主线程,这是进程中第一个开始执行代码的线程。 主线程创建后[详细]
-
记一次 .NET 某电商定向爬虫的内存碎片化解析
所属栏目:[语言] 日期:2021-11-03 热度:144
背景 1. 讲故事 上个月有位朋友wx找到我,说他的程序存在内存泄漏问题,寻求如何解决? 如下图所示: 从截图中可以看出,这位朋友对 windbg 的操作还是有些熟悉的,可能缺乏一定的实操经验,所以用了几个命令之后就不知道怎么排查下去了。 既然找到我,那就以[详细]
-
手把手带你学C++,Set是个啥,有何用?
所属栏目:[语言] 日期:2021-11-03 热度:194
今天我们继续来聊C++的STL,今天来聊聊set。为了写这篇文章,老梁花了一早上的时间把网上大部分关于set的博文都看了一遍。 看完之后发现不出所料的千篇一律,上来就是说怎么创建set,set里有哪些函数,标准的技术文档。 这些东西对于老鸟来说当然没问题,瞬[详细]
-
Java进阶之深入理解负载平均的五种算法实现原理
所属栏目:[语言] 日期:2021-11-03 热度:108
前言 什么是负载均衡: 指由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。通过某种 负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务[详细]
-
ArrayList 重拳出招,把 LinkedList 干翻在地
所属栏目:[语言] 日期:2021-11-03 热度:90
如果再有人给你说 ArrayList 底层是数组,查询快、增删慢;LinkedList 底层是链表,查询慢、增删快,你可以让他滚了! 这是一个极其不负责任的总结,关键是你会在很多地方看到这样的结论。 害,我一开始学 Java 的时候,也问过一个大佬,ArrayList 和 LinkedLi[详细]
-
完全搞懂Channel原理之一
所属栏目:[语言] 日期:2021-11-03 热度:142
躺的太久,该起床了。 宁可我卷死别人,不能让别人卷我。 之前断断续续看过Go几个模块的源码,可从未下笔,导致有些细节记不起来了。打算写一系列文章重新记录。 channel源码解析的文章太多了。一篇文章的长篇大论大部分人没耐心看完,所以我打算分开写,最[详细]
-
Python中令人疑惑的操作符
所属栏目:[语言] 日期:2021-11-03 热度:129
操作符对于现代编程来说绝对是一个至关重要的组成部分。它们通常用于数学运算。Python编程语言有一系列不同的操作符,并且不断添加新的操作符。 有一个运算符具有一些相当有趣的功能和特点,那就是加等运算符。乍一看,这似乎只是加法和等于操作符的基本组合[详细]
-
从Java 9 至 Java 17之 Java 11
所属栏目:[语言] 日期:2021-11-02 热度:105
ava 11是自Java 8以来的又一个LTS版本,是目前全球使用最多的LTS版本之一。今天我们接着在Java 9 到 Java 17系列文章中来认识针对普通开发者的Java 11。 字符串API增强 在Java 11中,针对String的操作进一步得到加强。避免我们在很常见的场景中引入额外的、[详细]
-
应该学习练手的五个Python迷你程序附代码
所属栏目:[语言] 日期:2021-11-02 热度:72
在使用Python的过程中,我最喜欢的就是Python的各种第三方库,能够完成很多操作。 下面就给大家介绍5个通过Python构建的项目,以此来学习Python编程。 一、石头剪刀布游戏 目标:创建一个命令行游戏,游戏者可以在石头、剪刀和布之间进行选择,与计算机PK。[详细]
-
相见恨晚后的 Python 内置库:itertools
所属栏目:[语言] 日期:2021-11-02 热度:166
最近事情不是很多,想写一些技术文章分享给大家,同时也对自己一段时间来碎片化接受的知识进行一下梳理,所谓写清楚才能说清楚,说清楚才能想清楚,就是这个道理了。 很多人都致力于把Python代码写得更Pythonic,一来更符合规范且容易阅读,二来一般Pythonic[详细]
-
LayUI 走了,JDK17 来临
所属栏目:[语言] 日期:2021-11-02 热度:107
看到这条消息时充满了感慨,毕竟松哥虽然主业是 Java,但是也一直在关注着前端的发展。 2013 年还在大三的时候就玩过 TypeScript,2014 年的时候当时还买了一本书 NodeJS 的书,后来大学毕业,工作,慢慢的兴趣就集中在后端了,前端虽然也一直在关注,但是只[详细]
-
Go多协程并发环境下的错误治理
所属栏目:[语言] 日期:2021-11-02 热度:142
在Go语言中,我们通常会用到panic和recover来抛出错误和捕获错误,这一对操作在单协程环境下我们正常用就好了,并不会踩到什么坑。但是在多协程并发环境下,我们常常会碰到以下两个问题。假设我们现在有2个协程,我们叫它们协程A和B好了: 如果协程A发生了pa[详细]
-
浅析 Go 与 C 的指南
所属栏目:[语言] 日期:2021-11-02 热度:138
C 和 Go 都相同: 运算符取出变量所在的内存地址 * 运算符取出指针变量所指向的内存地址里面的值,也叫 解引用 C 语言版示例: #include stdio.h int main() { int bar = 1; // 声明一个指向 int 类型的值的指针 int *ptr; // 通过 取出 bar 变量所在的内存[详细]
-
如何引用Python对Gif进行压缩
所属栏目:[语言] 日期:2021-11-02 热度:60
前天在给微信公众号上传文章的时候,文章里面有一个图片是gif的,在上传的过程中报错了,说是图片超大了。搜索之后发现图片需要小于5m。 那么问题就转化为怎么把当前的gif给缩减到5m以内本着有轮子用轮子,没有轮子造轮子的精神,网上搜索一番。 发现一些现[详细]
-
Python 第三方库大全,看这一篇文章就可以了!
所属栏目:[语言] 日期:2021-11-02 热度:104
管理 Python 版本和环境的工具 p:非常简单的交互式 python 版本管理工具。 pyenv:简单的 Python 版本管理工具。 Vex:可以在虚拟环境中执行命令。 virtualenv:创建独立 Python 环境的工具。 virtualenvwrapper:virtualenv 的一组扩展。 buildout:在隔离[详细]
-
人人都能看明白的Python装饰器入门教程!
所属栏目:[语言] 日期:2021-11-02 热度:160
之前的文章中提到,很多人认为理解了装饰器的概念和用法后,会觉得自己的 Python 水平有一个明显的提高。 但很多教程在一上来就会给出装饰器的定义以及基本用法,例如你一定会在很多文章中看到例如代码运行时间计时器等相关常用装饰器。 直接从应用入手这样[详细]
-
关于Go程序错误处理的一些提议
所属栏目:[语言] 日期:2021-11-02 热度:80
Go的错误处理这块是日常被大家吐槽较多的地方,我在工作中也观察到一些现象,比较严重的是在各层级的逻辑代码中对错误的处理有些重复。 比如,有人写代码就会在每一层都判断错误并记录日志,从代码层面看,貌似很严谨,但是如果看日志会发现一堆重复的信息,[详细]
-
一日一技:在 Python 里面如何实施一个抽象类
所属栏目:[语言] 日期:2021-11-02 热度:65
在某个在线教育的网站上设计模式相关的课程中,某老师说 Python 不支持抽象类和接口。 但实际上,Python 支持抽象类。Python 自带的abc模块用于实现抽象类相关的定义和操作。 我们通过一个简单的例子来说明,如何在 Python 中实现抽象类: from abc import A[详细]
-
Go Fiber 框架一系列:中间件
所属栏目:[语言] 日期:2021-11-02 热度:77
Middleware(中间件) 是一个 Web 框架重要的组成部分,通过这种模式,可以方便的扩展框架的功能。目前 Go Web 框架都提供了 Middleware 的功能,也有众多可用的 Middleware。 Fiber 也是如此,官方提供了众多的 Middleware,方便用户直接使用。本文先看看 Fib[详细]