golang init 初始化执行顺序

首先main之前会执行init。如果init中又依赖其他扩展,则先执行其他扩展中的init。类似于树的叶子节点,先执行的从叶子节点开始。这是今天遇到的一个问题,还有一个就是关于windows配置环境变量。需要注意两点,首先就是环境变量设置之后,需要关闭当前命令行才能生效。另外就是环境变量分为用户变量和系统变量,如果其中设置不生效,可以选择都设置。还有就是设置环境变量以后,是以命令行形式运行的。

golang 什么时候关闭channel

通知接收方没有更多数据了 ch := make(chan int) go func() { for i := 0; i < 5; i++ { ch <- i } close(ch) // 生产者发完了,通知接收者 }() for v := range ch { fmt.Println(v) // 接收者循环读取直

mysql binlog 和 redo log的区别

binlog 和redo log 区别binlog =>记录insert、update、delete的操作(逻辑日志 )分三种格式:statement、row(记录数据变更情况)、mixed追加写的模式,主要用在数据恢复和主从复制redo log =>记录的是数据页上的物理修改(如"在数据页 P 的偏移量 100 写入 1")(物理写)循环写,写满后覆盖之前的数据。主要用在事务持久性,

tcp 四次挥手状态

a给b发fin,a进入fin_wait_1。b收到fin之后,内核发送ack(a收到后进入fin_wait_2),之后b状态就变成了close_wait之后b给a发送fin,这时候b进入last_acka收到b发送的fin之后,发送ack,此时a变成time_waitb收到ack后状态变成closedclose_wait的作用是对方已经不能给我发送数据,因为它已经fin了。我仍然可以给对方发送数据

fastadmin env 问题

今天在配置fastadmin env的过程中,突然发现env不生效。然后在database.php将值写死,这时候报警告错误。Warning: syntax error, unexpected end of file, expecting TC_DOLLAR_CURLY or TC_QUOTED_STRING or '"' in /Users/bot/PhpstormProjects/fastad

Visiting China Tips and advice

Handy Tips for Traveling in China ✈️🇨🇳Grab a local SIM card right away. You’ll need one for almost everything. Since it requires ID verification, it’s easiest to get it at an airport service center—h