name5566 / leaf

A game server framework in Go (golang)
Apache License 2.0
5.26k stars 1.31k forks source link

Skeleton 的 AsynCall 是否线程安全 #172

Closed mini-bix closed 4 years ago

mini-bix commented 4 years ago

func (s Skeleton) AsynCall(server chanrpc.Server, id interface{}, args ...interface{}) { if s.AsynCallLen == 0 { panic("invalid AsynCallLen") }

s.client.Attach(server)
s.client.AsynCall(id, args...)

} 并发情况下同时调用AsynCall,s.client.AsynCall(id, args...)会不会没执行被其他协程调用s.client.Attach(server)导致错误,s.client.AsynCall(id, args...)中pendingAsynCall也没加锁是否会有问题呢?