与日俱进,在 Go 1.20 中这种高效转换的方式又变了 (colobu.com)

【简介】

在 Go 1.19 的开发中, string.SliceHeader和string.StringHeader经历了一个生死存亡的争斗,这两个类型一度被标记为弃用(deprecated),但是这两个类型经常用在 slice of byte 和 string 高效互转的场景中,如果被标记为弃用,但是目前还没有可替代的方法,所以这两个类型又把弃用标记去掉了,如无意外,它们也会在 Go 1.20 再次被标记为弃用。

点击查看全文 >>

@技术头条 2022-09-12 22:38分享 / 原作者微博:@colobu / 0个评论
赞过的人: IT技术博客大学习
要不要再学学下面的文章?
向量数据库入坑:传统文本检索方式的降维打击,使用 Faiss 实现向量语义检索 (soulteary.com)
在上一篇文章[《聊聊来自元宇宙大厂 Meta 的相似度检索技术 Faiss》]中,我们有聊到如何快速入门向量检索技术,借助 Meta AI(Facebook Research)出品的 faiss 实现“最基础的文本内容相似度检索工具”,初步接触到了“语义检索”这种对于传统文本检索方式具备“降维打击”的新兴技术手段。有朋友在聊天中提到,希望能够聊点更具体的,比如基于向量技术实现的语义检索到底比传统文本检索强多少,以及是否有局限性,能不能和市场上大家熟悉的技术产品进行一个简单对比。那么,本篇文章就试着从这个角度来聊聊。
by @技术头条 2022-09-12 22:39 分享 查看详情
啊哈,一道有趣的Go并发题 (colobu.com)
今天一位同学给我出了一道并发题,作为在极客时间开了《GO并发编程实战课》的作者,居然一时间没有回答上来,惭愧啊,所以晚上专门研究了一下题目,给出几个实现方案供探讨。
by @技术头条 2022-09-03 23:26 分享 查看详情
Go并发编程一年回顾 (colobu.com)
距离我2019年的深入Go并发编程研讨课发布也有一年时间了。在Gopher Beijing 2019相关演讲后我整理了这一个8小时的课程,对有志于深入理解Go并发编程原理的同学从深度和广度上提供一些帮助。当然一年来我也一直关注着Go并发编程的演变,并且补充了池和并发模式的一些例子。对于官方的并发库来说,这一年来又有哪些变化呢,让我们快速回顾一下。
by @技术头条 2022-08-19 00:06 分享 查看详情
使用 Docker 搭建属于你自己的 Go Playground (soulteary.com)
本篇文章将介绍如何通过容器来部署属于你自己的 Go Playground。Go Playground 是 Golang 团队推出的在线语言工具,不论是对于初学者而言,还是对 Golang 开发者来说,它都不失为一个简单好用的神器。但由于种种原因,国内部分用户使用这个功能可能会遇到一些网络问题,而无法使用这个服务;以及出于运行代码包含一些“隐私”,而无奈放弃这个服务。
by @技术头条 2022-08-18 23:45 分享 查看详情
Go 垃圾回收器指南 (colobu.com)
本指南旨在帮助高级Go语言用户更好地了解Go语言垃圾回收器的使用成本。 它还提供了Go用户如何利用这些知识来提高应用程序的资源利用率的指导。 它并不假设你了解垃圾回收,但假设你熟悉Go语言。
by @技术头条 2022-08-18 23:21 分享 查看详情
Spring注入Bean的七种方式 (mp.weixin.qq.com)
我们谈到Spring的时候一定会提到IOC容器、DI依赖注入,Spring通过将一个个类标注为Bean的方法注入到IOC容器中,达到了控制反转的效果。那么我们刚开始接触Bean的时候,一定是使用xml文件,一个一个的注入,就例如下面这样。
by @code小生 2022-08-07 09:41 分享 查看详情
Go: logrus性能提升 (wklken.me)
在Go项目中,logrus是一个相对完备的第三方日志库,用起来非常顺手, 特别是WithField/WithFields/WithError。我们开发一些对性能要求非常高的应用,例如API网关/权限服务等,需要记录流水日志,此时日志库的性能直接会影响整体接口性能,所以针对性地做了一些优化。
by @技术头条 2022-07-24 21:03 分享 查看详情
使用容器方式编译无功能限制的 Drone CI (soulteary.com)
因为默认版本的 Drone 包含构建次数限制,如果日常高频使用 Drone,不久之后,便会遇到需要“重新初始化”应用才能继续使用的问题,但其实,作为个人用户,我们其实可以不受此限制影响。所以本篇文章,就来分享下如何使用容器方式构建无使用限制的 Drone CI。
by @技术头条 2022-07-24 20:56 分享 查看详情
四舍五入在Go语言中为何如此困难 (mp.weixin.qq.com)
在 Go 语言中这似乎成为了难题,在 stackoverflow 上搜索 [go] Round 会存在大量相关提问,Go 1.10 开始才出现 math.Round 的身影,本以为 Round 的疑问就此结束,但是一看函数注释 Round returns the nearest integer, rounding half away from zero ,这是并不常用的 Round half away from zero 实现呀,说白了就是我们理解的 Round 阉割版,精度为 0 的 Round half up 实现,Round half away from zero 的存在是为了提供一种高效的通过二进制方法得结果,可以作为 Round 精度为 0 时的高效实现分支。
by @code小生 2022-07-24 11:01 分享 查看详情
Java 正确获取对象内存地址的方式 (www.awaimai.com)
在本教程中,我们将了解如何在 Java 中查找对象的内存地址。

在此之前,我们需要说明的是,运行时数据区的内存布局不是 JVM 规范的一部分,完全由实现者自行决定。因此,每种 JVM 可能回用不同的策略布局内存中的对象和数组。

在本教程中,我们主要讨论 HotSpot JVM。
by @技术头条 2022-06-19 23:24 分享 查看详情