当前分类:
Golang
go 生成密码 php的 password_hash go实现
2023-09-21
411
554
packagemain
import(
"fmt"
"golang.org/x/crypto/bcrypt"
)
funcmain(){
hashedPassword:=passwordHash("123456")
fmt.Println(hashedPassword)
hashedPassword=
go 空接口类型的变量的使用
2023-07-17
524
707
// interface{} 在 Go 中是一个特殊的类型,表示任何类型,类似于 C# 中的 object 类型或 Java 中的 Object 类型。// 它可以接收任何类型的值,但如果我们需要使用其原始类型的值,我们需要进行类型断言。packagemain
import(
"fmt"
)
funcmain(){
//定义一个空接口类型的变量可以给空接口
go 递归读取目录中所有文件和目录 读取当前目录的文件和目录
2023-06-30
517
697
递归读取目录中所有文件和目录//ReadDirAll递归读取目录中所有文件和目录
funcReadDirAll(pathstring)([]string,error){
varfiles[]string
err:=filepath.Walk(path,func(pathstring,infoos.FileInfo,errerror)error{
iferr!=nil{
re
go 递归读取目录,并生成树形结构的数据
2023-06-30
411
554
go 递归读取目录,并生成树形结构的数据//读取目录中的所有文件,如果是目录则递归读取,生成结构化的树形struct
packagemain
import(
"encoding/json"
"fmt"
"os"
"path/filepath"
)
//TreeNode文件的树形结构体
ty
Lazarus IDE 的 Panel 组件 去除底部和右侧的边框标线
2023-06-22
205
276
Lazarus IDE 的 Panel 组件 去除底部和右侧的边框标线 把BevelOuter 属性改为 byNone,改为byNone看不到组件的边界,可以设置背景图Color 属性。
使用 govcl 开发桌面UI 在 Lazarus IDE 编译中报错
2023-06-22
335
452
使用 govcl 开发桌面UI 在 Lazarus IDE 编译中报错go build -i -buildmode=exe -ldflags="-H windowsgui" -tags="tempdll" -o "project1.exe"flag provided but not defined: -iusage: go build [
在go协程中共享资源需要加锁处理
2023-04-14
285
384
在go协程中共享资源需要加锁处理packagemain
import(
"fmt"
"sync"
)
//创建一个互斥锁
varmutex=&sync.Mutex{}
//定义一个共享资源
varsharedResource=0
//定义一个等待组
varwg=sync.WaitGroup{}
//定义一
go 的 Pool池对象 sync.Pool 创建mysql连接池
2023-04-13
202
272
//在这个例子中,我们创建了一个sync.Pool,其中包含一个New函数,该函数创建一个MySQL连接
//在someFunction中,我们使用dbPool.Get()从池中获取一个MySQL连接
//然后我们使用连接进行一些操作,最后使用dbPool.Put()将连接放回池中
//我们可以通过设置dbPool的大小来初始化连接池中的连接数量
//例如,如果我们想要初始化10个连接,我
go 的 Pool池对象-sync.Pool
2023-04-10
301
406
packagemain
import(
"fmt"
"strconv"
"sync"
)
//在go中,原生的池化数据结构为sync.Pool,有三个方法:
//New字段为一个方法,定义为func()interface{},在新建Pool时,定义好New字段,以供后续从池中获取对象时,如果当前池中无对象,则使