Skip to content

开发笔记:注意问题

cg33 edited this page Jul 23, 2018 · 1 revision
  • 数据竞争(data race),多个go程访问读写全局变量的时候需要加锁,否则高并发情况可能出现数据竞争
  • string是immutable的,对string进行赋值会产生内存分配,而[]bytes不会。如果是在栈上分配内存不影响性能,在堆上分配内存则会造成gc的压力,可以通过对象池(sync.pool)来解决。string转[]bytes可通过unsafe.pointer实现不分配内存转换。
  • 修改slice超过slice的cap的时候会分配内存,长度会翻倍
Clone this wiki locally