Transitioning to Go0 码力 | 30 页 | 1.53 MB | 1 年前3
Go 101 (Golang 101) v1.21.00 码力 | 630 页 | 3.77 MB | 2 年前3
Golang 101(Go语言101 中文版) v1.21.a。第17章:值部-为了更容易和更深刻地理解Go中的各种值 。第18章:数组、切片和映射 - Go中的首要容器类型 。第19章:字符串 。第20章:函数 - 函数类型和函数值,以及变长参数个数函数 。第21章:通道 - Go特色的并发同步方式 第22章:方法 。第23章:接口-通过包裹不同具体类型的非接口值来实现反射和多态 第24章:类型内嵌-不同于继承的类型扩展方式 第25章:非类型安全指针 第26章:泛型-如何使用和解读组合类型 第32章:代码块和标识符作用域 ## 目录 第33章:表达式估值顺序规则 。第34章:值复制成本 。第35章:边界检查消除 ## · 并发编程 。第36章:并发同步概述 。第37章:通道用例大全 第38章:如何优雅地关闭通道 。第39章:其它并发同步技术-如何使用sync标准库包 。第40章:原子操作-如何使用sync/atomic标准库包 第41章:Go中的内存顺序保证 第42章:一些常见并发编程错误 各种其它主题的文章。所以现在《Go语言101》大约有50篇文章。 ## 你曾经的困惑主要包括哪些方面? 一些困惑是关于一些Go语法和语义设计细节的。一些困惑涉及到某些类型的值,主要是切片,接口和通道类型。另外一些涉及到标准包API的使用细节。 ## 你认为造成你曾经的困惑的主要原因是什么? 第0章:关于《Go语言101》 我觉得最主要的原因是我当时抱着Go是一门非常简单的语言的态度去学习和0 码力 | 591 页 | 21.40 MB | 2 年前3
Comprehensive Rust(English) 2024120 码力 | 382 页 | 1.00 MB | 1 年前3
如何消除程序中的数据竞争-周光远d := c \\ 5 \quad print(d) \end{array} $$ channel: 开始发送 开始发送 开始接收 ## 接收完成 发送完成 接收完成 无缓冲通道 所有通道:开始发送 → 接收完成(同一个数据); - 对于无缓冲channel:开始接收 → 发送完成(同一个数据); 其他的对于init函数,锁,协程,原子操作,sync包里的功能,还有许多保证 make(chan struct{}, 1) go func() { a[1] = 1 c <- struct{}{} }() <-c 3 a[2] = 2 4 利用通道的happens before保证;建立了2→3。 再结合传递性可以得到: $ 1 \rightarrow 2 \rightarrow 3 \rightarrow 4 $ . 所以消除了数据竞争 /8/3/8/d8388e030498b4a865900850a6f7e74b/p17_1.jpg) ## 消除数据竞争 可用的happens : • 互斥锁/读写锁 • 原子操作 • 通道 • Sync包中的其他能力(sync.Map, sync.WaitGroup, sync.Cond, sync.Once) • golang.org/x/sync中的能力(errgroup0 码力 | 30 页 | 1.92 MB | 2 年前3
使用硬件加速Tokio - 戴翔0 码力 | 17 页 | 1.66 MB | 2 年前3
深度解析CNCF社区⾸个基于Kubernetes的边缘计算平台KubeEdge边缘之间的网络可靠性和带宽限制的问题。 → 通过大幅优化边缘组件的资源占用(二进制大小约46MB,运行时内存占用约10MB),解决了边缘资源的约束问题。 → 通过在云边之间构建的双向多路复用网络通道,解决了从云端管理高度分布的海量节点和设备难的问题。 南向支持对接物联网主流的通信协议(MQTT,Bluetooth,Zigbee,BACnet等),解决了异构硬件接入难的问题 ## Why KubeEdge——CNCF0 码力 | 20 页 | 2.08 MB | 2 年前3
Golang 101(Go语言101 中文版) v1.21.a为了更容易和更深刻地理解Go中的各种值 - 第18章:数组、切片和映射 - Go中的首要容器类型 - 第19章:字符串 - 第20章:函数 - 函数类型和函数值,以及变长参数个数函数 - 第21章:通道 - Go特色的并发同步方式 - 第22章:方法 - 第23章:接口 - 通过包裹不同具体类型的非接口值来实现反射和多态 - 第24章:类型内嵌 - 不同于继承的类型扩展方式 第32章:代码块和标识符作用域 。第33章:表达式估值顺序规则 。第34章:值复制成本 。第35章:边界检查消除 ## • 并发编程 。第36章:并发同步概述 第37章:通道用例大全 。第38章:如何优雅地关闭通道 。第39章:其它并发同步技术 - 如何使用sync标准库包 。第40章:原子操作 - 如何使用sync/atomic标准库包 。第41章:Go中的内存顺序保证 第42章:一些常见并发编程错误 各种其它主题的文章。所以现在《Go语言101》大约有50篇文章。 ## 你曾经的困惑主要包括哪些方面? 一些困惑是关于一些Go语法和语义设计细节的。一些困惑涉及到某些类型的值,主要是切片,接口和通道类型。另外一些涉及到标准包API的使用细节。 你认为造成你曾经的困惑的主要原因是什么? 我觉得最主要的原因是我当时抱着Go是一门非常简单的语言的态度去学习和使用Go。持有这种态度阻止了我更深刻地理解Go。0 码力 | 608 页 | 1.08 MB | 2 年前3
Golang 101(Go语言101 中文版) v1.21.a为了更容易和更深刻地理解Go中的各种值 - 第18章:数组、切片和映射 - Go中的首要容器类型 - 第19章:字符串 - 第20章:函数 - 函数类型和函数值,以及变长参数个数函数 - 第21章:通道 - Go特色的并发同步方式 - 第22章:方法 - 第23章:接口 - 通过包裹不同具体类型的非接口值来实现反射和多态 - 第24章:类型内嵌 - 不同于继承的类型扩展方式 也解释了什么是“函数退出阶段” 第32章:代码块和标识符作用域 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除 ## • 并发编程 第36章:并发同步概述 第37章:通道用例大全 第38章:如何优雅地关闭通道 。第39章:其它并发同步技术 - 如何使用sync标准库包 。第40章:原子操作 - 如何使用sync/atomic标准库包 第41章:Go中的内存顺序保证 第42章:一些常见并发编程错误 各种其它主题的文章。所以现在《Go语言101》大约有50篇文章。 ## 你曾经的困惑主要包括哪些方面? 一些困惑是关于一些Go语法和语义设计细节的。一些困惑涉及到某些类型的值,主要是切片,接口和通道类型。另外一些涉及到标准包API的使用细节。 ## 你认为造成你曾经的困惑的主要原因是什么? 我觉得最主要的原因是我当时抱着Go是一门非常简单的语言的态度去学习和使用Go。持有这种态度阻止了我更深刻地理解Go。0 码力 | 821 页 | 956.82 KB | 2 年前3
ffmpeg翻译文档像素格式。如果pix_fmt前面前导了一个+字符,ffmpeg会在要求的像素格式不被支持时退出,这也意味着滤镜中的自动转换也会被禁止。如果pix_fmt是单独的+,则ffmpeg选择和输入(或者滤镜通道)一样的像素格式作为输出,这时自动转换也会被禁止。 - sws_flags flags (input/output): 选择 SwScaler 放缩标志量。 - vdt n:丢弃的门限设置。 - 入进行设置,仅仅通道是真实的设备或者raw数据分离出并映射的通道才有效。对于输出则可以强制设置音频量化的采用率。 - aq q (output): 设置音频品质(编码指定为VBR),它是 -q:a 的别名。 - -ac[:stream_specifier] channels (input/output, per-stream): 设置音频通道数。默认输出会有输入相同的音频通道。对于输入进行设置 ,仅仅通道是真实的设备或者raw数据分离出并映射的通道才有效。 - an (output): 禁止输出音频 - acode codec (input/output): 设置音频解码/编码的编/解码器,是 -codec:a 的别名 - sample_fmt[:stream_specifier] sample_fmt (output, per-stream): 设置音频样例格式。使用 -sample_fmt0 码力 | 502 页 | 3.06 MB | 2 年前3
共 272 条
- 1
- 2
- 3
- 4
- 5
- 6
- 28













