-
Go 什么时候会触发 GC?
所属栏目:[语言] 日期:2021-11-03 热度:137
Go 语言作为一门新语言,在早期经常遭到唾弃的就是在垃圾回收(下称:GC)机制中 STW(Stop-The-World)的时间过长。那么这个时候,我们又会好奇一点,作为 STW 的起始,Go 语言中什么时候才会触发 GC 呢?今天就由煎鱼带大家一起来学习研讨一轮。什么是 GC在计[详细]
-
人人都能看明白的Python装饰器入门教程!
所属栏目:[语言] 日期:2021-11-02 热度:103
之前的文章中提到,很多人认为理解了装饰器的概念和用法后,会觉得自己的 Python 水平有一个明显的提高。但很多教程在一上来就会给出装饰器的定义以及基本用法,例如你一定会在很多文章中看到例如代码运行时间计时器等相关常用装饰器。直接从应用入手这样学[详细]
-
关于Go程序错误处理的一些提议
所属栏目:[语言] 日期:2021-11-02 热度:72
Go的错误处理这块是日常被大家吐槽较多的地方,我在工作中也观察到一些现象,比较严重的是在各层级的逻辑代码中对错误的处理有些重复。比如,有人写代码就会在每一层都判断错误并记录日志,从代码层面看,貌似很严谨,但是如果看日志会发现一堆重复的信息,[详细]
-
Python 第三方库大全,看这一篇文章就可以了!
所属栏目:[语言] 日期:2021-11-02 热度:163
管理 Python 版本和环境的工具p:非常简单的交互式 python 版本管理工具。pyenv:简单的 Python 版本管理工具。Vex:可以在虚拟环境中执行命令。virtualenv:创建独立 Python 环境的工具。virtualenvwrapper:virtualenv 的一组扩展。buildout:在隔离环境[详细]
-
如何引用Python对Gif进行压缩
所属栏目:[语言] 日期:2021-11-02 热度:107
前天在给微信公众号上传文章的时候,文章里面有一个图片是gif的,在上传的过程中报错了,说是图片超大了。搜索之后发现图片需要小于5m。那么问题就转化为怎么把当前的gif给缩减到5m以内本着有轮子用轮子,没有轮子造轮子的精神,网上搜索一番。发现一些现象[详细]
-
浅析 Go 与 C 的指南
所属栏目:[语言] 日期:2021-11-02 热度:137
C 和 Go 都相同: 运算符取出变量所在的内存地址* 运算符取出指针变量所指向的内存地址里面的值,也叫 解引用 C 语言版示例:#include stdio.hint main(){ int bar = 1; // 声明一个指向 int 类型的值的指针 int *ptr; // 通过 取出 bar 变量所在的内存地址[详细]
-
Go多协程并发环境下的错误治理
所属栏目:[语言] 日期:2021-11-02 热度:183
在Go语言中,我们通常会用到panic和recover来抛出错误和捕获错误,这一对操作在单协程环境下我们正常用就好了,并不会踩到什么坑。但是在多协程并发环境下,我们常常会碰到以下两个问题。假设我们现在有2个协程,我们叫它们协程A和B好了:如果协程A发生了pa[详细]
-
LayUI 走了,JDK17 来临
所属栏目:[语言] 日期:2021-11-02 热度:75
看到这条消息时充满了感慨,毕竟松哥虽然主业是 Java,但是也一直在关注着前端的发展。2013 年还在大三的时候就玩过 TypeScript,2014 年的时候当时还买了一本书 NodeJS 的书,后来大学毕业,工作,慢慢的兴趣就集中在后端了,前端虽然也一直在关注,但是只[详细]
-
相见恨晚后的 Python 内置库:itertools
所属栏目:[语言] 日期:2021-11-02 热度:89
最近事情不是很多,想写一些技术文章分享给大家,同时也对自己一段时间来碎片化接受的知识进行一下梳理,所谓写清楚才能说清楚,说清楚才能想清楚,就是这个道理了。很多人都致力于把Python代码写得更Pythonic,一来更符合规范且容易阅读,二来一般Pythonic[详细]
-
从Java 9 至 Java 17之 Java 11
所属栏目:[语言] 日期:2021-11-02 热度:74
ava 11是自Java 8以来的又一个LTS版本,是目前全球使用最多的LTS版本之一。今天我们接着在Java 9 到 Java 17系列文章中来认识针对普通开发者的Java 11。字符串API增强在Java 11中,针对String的操作进一步得到加强。避免我们在很常见的场景中引入额外的、复[详细]
-
应该学习练手的五个Python迷你程序附代码
所属栏目:[语言] 日期:2021-11-02 热度:67
在使用Python的过程中,我最喜欢的就是Python的各种第三方库,能够完成很多操作。下面就给大家介绍5个通过Python构建的项目,以此来学习Python编程。一、石头剪刀布游戏目标:创建一个命令行游戏,游戏者可以在石头、剪刀和布之间进行选择,与计算机PK。如[详细]
-
可视化打包 exe,这个Python神器绝绝子
所属栏目:[语言] 日期:2021-11-02 热度:161
什么是auto-py-to-exeauto-py-to-exe 是一个用于将Python程序打包成可执行文件的图形化工具。本文就是主要介绍如何使用 auto-py-to-exe 完成 python 程序打包。auto-py-to-exe 基于 pyinstaller ,相比于 pyinstaller ,它多了 GUI 界面,用起来更为简单方[详细]
-
用 jconsole 在 Linux 上监控你的 Java
所属栏目:[语言] 日期:2021-11-02 热度:98
如何使用 Java 开发工具包中的 Java 监控和管理控制台。Java 开发工具包(JDK)提供了开发 Java 应用程序的二进制文件、工具和编译器。其中一个有用的工具是 jconsole。为了演示,我将使用 WildFly J2EE 应用服务器,它是 JBOSS 开源应用服务器项目的一部分[详细]
-
10月份GitHub上热门Java开源项目榜单
所属栏目:[语言] 日期:2021-11-02 热度:106
Spring相关组件阅读笔记,涵盖以下内容:spring-corespring-aopspring-contextspring-taskspring-transactionspring-mvcguava-cache2ruoyi-vue-pro2ruoyi-vue-prohttps://github.com/YunaiV/ruoyi-vue-pro Star 1363这是一个基于SpringBoot,Spring Securit[详细]
-
C++入口不是main?知乎上掐起来了!
所属栏目:[语言] 日期:2021-11-02 热度:127
你说main函数是入口,那main是被谁调用的呢?他说mainCRTStartup是入口,那mainCRTStartup又是被谁调用的呢?从进程创建说起一切的一切,让我们从创建进程开始说起。进程创建完成后,接着会创建主线程,这是进程中第一个开始执行代码的线程。主线程创建后,就[详细]
-
Python 3.10的几个好用的全新特性
所属栏目:[语言] 日期:2021-11-02 热度:56
Python 3.10已经在10月4日发布了,要不要更新呢?3.10版没有添加新的模块,但是引入了很多新的并且有用的特性。让我们来一起看看吧。更详细语法错误提示信息在调试代码时,能够提供更多的错误新信息和提示了,报告可以指出错误的语法,而不仅仅是提供Syntax[详细]
-
Go语言其程序符号重命名
所属栏目:[语言] 日期:2021-11-02 热度:169
Go程序源代码中,关键字、接口、类型、常量、变量、方法、函数、字段、标签(label)等等的名称都可以称为符号。Go可执行程序中,符号表主要包含两种类型的符号:数据对象(Data object)函数(Function)一般情况下(不是绝对的),在源代码编译为可执行程序的过程[详细]
-
记一次 .NET 某电商定向爬虫的内存碎片化解析
所属栏目:[语言] 日期:2021-11-02 热度:116
背景1. 讲故事上个月有位朋友wx找到我,说他的程序存在内存泄漏问题,寻求如何解决? 如下图所示:从截图中可以看出,这位朋友对 windbg 的操作还是有些熟悉的,可能缺乏一定的实操经验,所以用了几个命令之后就不知道怎么排查下去了。既然找到我,那就以我[详细]
-
Python中令人疑惑的操作符
所属栏目:[语言] 日期:2021-11-02 热度:127
操作符对于现代编程来说绝对是一个至关重要的组成部分。它们通常用于数学运算。Python编程语言有一系列不同的操作符,并且不断添加新的操作符。有一个运算符具有一些相当有趣的功能和特点,那就是加等运算符。乍一看,这似乎只是加法和等于操作符的基本组合[详细]
-
手把手带你学C++,Set是个啥,有何用?
所属栏目:[语言] 日期:2021-11-02 热度:136
今天我们继续来聊C++的STL,今天来聊聊set。为了写这篇文章,老梁花了一早上的时间把网上大部分关于set的博文都看了一遍。看完之后发现不出所料的千篇一律,上来就是说怎么创建set,set里有哪些函数,标准的技术文档。这些东西对于老鸟来说当然没问题,瞬间[详细]
-
写 Python 脚本时,一定要带上这个
所属栏目:[语言] 日期:2021-11-02 热度:110
我发现有不少朋友写 Python 脚本非常随意,要么不用函数,要么函数随处定义,反正第一眼看不出要执行的第一行代码位于何处,这样的脚本可读性很差,而且容易隐藏 bug,解决这个问题很简单,当我们写 Python 脚本时,一定要加上这个:def main(): # do somet[详细]
-
Go 里的超时控制也很轻松
所属栏目:[语言] 日期:2021-11-02 热度:115
日常开发中我们大概率会遇到超时控制的场景,比如一个批量耗时任务、网络请求等;一个良好的超时控制可以有效的避免一些问题(比如 goroutine 泄露、资源不释放等)。Timer在 go 中实现超时控制的方法非常简单,首先第一种方案是 Time.After(d Duration):func[详细]
-
Golang 中不要犯这 5 个错误啦
所属栏目:[语言] 日期:2021-11-02 热度:60
Go 给人的印象是容易入门,因为语法简单。不过新手还是比较容易犯一些错误的。本文总结了 5 个常见的错误,你检验下自己犯过没有?!这些是我写 Go 时所犯的错误,希望对你有帮助!1、循环内部在循环中,有几种情况可能会导致混乱,你需要弄清楚。1.1、循环迭[详细]
-
代码生成器使用起来,是真的爽
所属栏目:[语言] 日期:2021-11-02 热度:181
代码生成器使Saltcorn 是一个无代码数据库管理器 Web 应用程序。它配备了一个引人注目的仪表板、丰富的生态系统和视图构建器以及可主题化的界面。 几乎没有编码经验的用户可以在几分钟内构建一个丰富的交互式数据库应用程序。公司也可以使用它来创建日常使[详细]
-
Java 从零开启手写 RPC-timeout 超时处理
所属栏目:[语言] 日期:2021-11-02 热度:165
前面我们实现了通用的 rpc,但是存在一个问题,同步获取响应的时候没有超时处理。如果 server 挂掉了,或者处理太慢,客户端也不可能一直傻傻的等。当外部的调用超过指定的时间后,就直接报错,避免无意义的资源消耗。思路调用的时候,将开始时间保留。获取[详细]
