
golang
文章平均质量分 72
小白求带528
后端编程经验三年,熟悉golang java,python,坐标南京,欢迎内推!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
一些不错的应用demo
golang实现set()集合 package main import( "fmt" "sync" ) type Set struct { m map[int]bool sync.RWMutex } func New() *Set { return &Set{ m: map[int]bool{}, } } func (s *Set) Add(item int) { s.Lock() defer s.Unlock() s.m[i原创 2020-09-29 17:40:27 · 522 阅读 · 0 评论 -
go并发
死锁,活锁,饥饿 饥饿:表示在任何情况下,并发进程都无法获得执行工作所需的所有资源 饥饿通常指一个或多个并发进程占有资源,使得其他进程不能占有资源进行执行 死锁—因争夺资源而造成的一种互相等待的现象,若无外力作用,他们讲无法推进下去。此时称系统处于死锁状态或者产生死锁,这些永远在互相等待的进程死锁进程。 示例(无缓存的channel,必须等待接受操作才放行) 活锁是正在主动执行并发操作的程序,但是这些操作无战向前 推进 程序的状 态。尽管不会阻塞线程,但也不能继续执行,因为线程不断重复同样的操作原创 2020-07-29 10:22:48 · 277 阅读 · 0 评论