摘要:
用途 用于遍历切片,数组,字符串, map, chan。在遍历完所有元素或通道关闭后,会自动退出循环,可以主动break退出。 用法示例 for index,value := range slice { // ... } for key,value := range map { // ... } f 阅读全文
posted @ 2025-08-31 20:09
CJTARRR
阅读(22)
评论(0)
推荐(0)
摘要:
常见信号 - SIGHUP,编号1,终端挂断信号 - SIGINT,编号2,中断信号,通常Ctrl+C 触发 - SIGQUIT,编号3,退出信号,通常Ctrl+\ 触发 - SIGKILL,编号9,强制终止信号,不能被捕获或忽略 - SIGTERM,编号15,终止信号,默认的终止信号 - SIGC 阅读全文
posted @ 2025-08-31 19:23
CJTARRR
阅读(9)
评论(0)
推荐(0)
摘要:
golang并未对值溢出做定义,采用值"回绕"的方式自动处理。 比如uint8的取值范围是0~255。如果将溢出到-1时,会回绕到255;如果将溢出到256时,会回绕到0。 值溢出不会报错和终止程序,但是运算结果应完全不是预期的,需要特别注意。 阅读全文
posted @ 2025-08-31 19:14
CJTARRR
阅读(3)
评论(0)
推荐(0)
摘要:
正常模式 锁竞争不激烈时的模式。 goroutine在需要获取锁时,会先自旋尝试获取锁,通常尝试4次,自旋结束后还没获取到锁,就进入等待队列。如果goroutine等待时间超过1ms,锁会切换为饥饿模式。 饥饿模式 锁竞争激烈时的模式。 goroutine在需要获取锁时,不自旋,而是直接进入等待队列 阅读全文
posted @ 2025-08-31 19:08
CJTARRR
阅读(5)
评论(0)
推荐(0)
摘要:
超时 当goroutine运行时间超过10ms,调度器会尝试抢占该goroutine,使其让出cpu资源。 触发系统调用 当goroutine执行系统调用时,调度器能够感知并切换goroutine. 系统调用包括:文件io,网络io,时间睡眠,内存管理,线程管理等,可以理解为goroutine发生阻 阅读全文
posted @ 2025-08-31 10:43
CJTARRR
阅读(6)
评论(0)
推荐(0)
浙公网安备 33010602011771号