• 【原创】go语言学习(二十一)Select和线程安全

    时间:2024-01-25 19:56:10

    目录select语义介绍和使用线程安全介绍互斥锁介绍和实战读写锁介绍和实战原子操作介绍select语义介绍和使用1、多channel场景A. 多个chann...

  • Google资深工程师深度讲解Go语言★

    时间:2024-01-25 15:19:08

     课程目录第1章 课程介绍第2章 基础语法第3章 内建容器第4章 面向“对象”第5章 面向接口第6章 函数式编程第7章 错误处理和资源管理第8章 测试与性能...

  • go语言网络编程通信案例

    时间:2024-01-24 18:34:39

    package mainimport ("bufio""fmt""net""os""strings")// 客户端func main() {conn, err := net.Dial("tcp", "localhost:8889")if err != nil {fmt.Println("客户端连接服...

  • Go语言对象池实践

    时间:2024-01-24 18:13:10

    对象池是一种在编程中用于优化资源管理的技术。它的基本思想是在应用程序启动时预先创建一组对象,并在需要时重复使用这些对象,而不是频繁地创建和销毁。这种重用的机制有助于减少资源分配和回收的开销,提高程序性能,特别在涉及大量短寿命对象的场景下效果显著。在Go语言中,对象池通常通过sync.Pool包或自定...

  • Go语言基础快速上手-特殊的操作

    时间:2024-01-24 11:16:09

    3.1、iota关键字 Go中没有明确意思上的enum(枚举)定义,不过可以借用iota标识符实现一组自增常亮值来实现枚举类型。 const ( a = iota // 0 b // 1 c = 100 // 100 d // 100 (与上一行常量值表达式一...

  • Go语言JSON数据相互转换

    时间:2024-01-24 08:39:08

    目录 结构体转json map转json int转json slice转json json反序列化为结构体 json反序列化为map 结构体转json结构体转json示例:package...

  • 不一样的go语言-构建系统与构件系统

    时间:2024-01-24 08:23:45

    前言  代码的最后一步是构建成计算机可识别的二进制数据,然后才得以在计算机上运行。如果你曾经写过有点规模(至少数十个以上独立的源文件,且需要依赖第三方包)C语言项目,必定对C语言项目的构建过程印象深刻。或者当你曾经在linux系统中使用rpm命令安装程序 时,系统一遍又一遍不厌其烦地提醒你缺少依赖时...

  • Go 语言命名规范:清晰、简洁、一致

    时间:2024-01-23 12:23:58

    Go 语言命名规范:清晰、简洁、一致 Go 语言是一门注重简洁和一致性的编程语言,良好的命名规范是代码可读性和维护性的关键因素之一。在本篇博客中,我们将深入探讨 Go 语言的命名规范,包括标识符、包名、常量、变量、函数等各个方面。 1. 标识符命名规范 1.1 包名 包名应该是简短、清晰且有意义的名...

  • Go语言开发区块链只需180行代码

    时间:2024-01-22 19:11:23

    区块链开发用什么语言?通过本文你将使用Go语言开发自己的区块链(或者说用go语言搭建区块链)、理解哈希函数是如何保持区块链的完整性、掌握如何用Go语言编程创造并添加...

  • go语言解析网页利器goquery使用教程(爬虫必备)

    时间:2024-01-22 14:51:13

    某些时候需要爬取网页中指定信息时,通常需要一些框架解析网页行成dom模型,然后来操作节点来获取相应的信息。在java中很显然就是Jsoup,而在Golang里,应该就是这个goquery了吧。goquery github地址 https://github.com/PuerkitoBio/goquer...

  • Go语言在语音处理中的优势

    时间:2024-01-21 17:40:41

    随着现在人工智能和语音技术的快速发展,语音处理成为了现代应用程序开发中不可或缺的一部分。而Go语言作为一门现代化的编程语言,具备了许多的优势让他成为了语音处理领域的理想选择。下面简单的介绍一下Go语言在语音处理方面的优势,说明他为什么成为了众多开发者的选择。 并发性能 Go语言内置了轻量级的协程(g...

  • Go 语言中 defer 使用时有哪些陷阱?

    时间:2024-01-21 11:38:30

    大家好,我是 frank ,「 Golang 语言开发栈」公众号作者。01 介绍defer 的使用方式是在其后紧跟一个函数调用或方法调用,确保在其所在的函数体返回之前执行其调用的函数或方法。在 Go 语言中,defer 一般用于资源释放,或使用 defer 调用一个匿名函数,在匿名函数中使用 rec...

  • Golang优秀开源项目汇总, 10大流行Go语言开源项目, golang 开源项目全集(golang/go/wiki/Projects), GitHub上优秀的Go开源项目

    时间:2024-01-20 13:28:04

    Golang优秀开源项目汇总(持续更新。。。)我把这个汇总放在github上了, 后面更新也会在github上更新。 https://github.com/hackstoic/golang-open-source-projects  。 欢迎fork, star , watch, 提issue。资料...

  • 我的Go语言学习之旅七:创建一个GUI窗口

    时间:2024-01-20 13:01:41

    在上次中,刚刚学过了  弹窗效果。这里再接着学习一下怎样创建一个窗口。还是老路子,先上代码:package mainimport ("github.com/lxn/go-winapi""syscall""strconv""unsafe")var (orainWndProc winapi.HWND)c...

  • Go学习笔记:Linux下安装Go语言

    时间:2024-01-19 23:24:32

    CentOS7.6安装Go-1.12.9版本1. 下载安装包到当前目录下> wget https://dl.google.com/go/go1.12.9.linux-amd64.tar.gz2. 解压到指定目录下> tar -C /usr/local -xzvf go1.12.9.lin...

  • Go语言环境安装&搭建(Win)

    时间:2024-01-19 22:53:10

    Go语言简介什么是Go语言Go语言是谷歌2009发布的第二款开源编程语言。Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。Go 语言具有很强的表达能力,它简洁、清晰而高效。得益于其并发机制, 用它编写的程序能够非常有效...

  • Go语言学习笔记(四)结构体struct & 接口Interface & 反射

    时间:2024-01-19 15:24:20

    加 Golang学习 QQ群共同学习进步成家立业工作 ^-^ 群号:96933959结构体structstruct 用来自定义复杂数据结构,可以包含多个字段(属性),可以嵌套;go中的struct类型理解为类,可以定义方法,和函数定义有些许区别;struct类型是值类型。struct定义type U...

  • Go语言学习笔记(四)结构体struct & 接口Interface & 反射reflect

    时间:2024-01-19 15:07:24

    加 Golang学习 QQ群共同学习进步成家立业工作 ^-^ 群号:96933959结构体structstruct 用来自定义复杂数据结构,可以包含多个字段(属性),可以嵌套;go中的struct类型理解为类,可以定义方法,和函数定义有些许区别;struct类型是值类型。struct定义type U...

  • go语言中的坑

    时间:2024-01-18 16:35:08

    package main;import ("fmt""time""sync")//修改slice的坑func add(s []int) {//当s通过append添加元素时,这里会发生内存重新分配//s会指向新的地址s = append(s, 3);}//当需要对slice进行修改时,建议通过函数返...

  • go语言调度器源代码情景分析之二:CPU寄存器

    时间:2024-01-18 09:40:53

    本文是《go调度器源代码情景分析》系列 第一章 预备知识的第1小节。寄存器是CPU内部的存储单元,用于存放从内存读取而来的数据(包括指令)和CPU运算的中间结果,之所以要使用寄存器来临时存放数据而不是直接操作内存,一是因为CPU的工作原理决定了有些操作运算只能在CPU内部进行,二是因为CPU读写寄存...