examples: use RWMutex when possible (#730)

This commit is contained in:
Alessandro Ros
2025-03-23 16:25:42 +01:00
committed by GitHub
parent c8f4a0b0d3
commit 87d3720f48
4 changed files with 20 additions and 20 deletions

View File

@@ -11,7 +11,7 @@ import (
type server struct {
s *gortsplib.Server
mutex sync.Mutex
mutex sync.RWMutex
stream *gortsplib.ServerStream
}
@@ -52,8 +52,8 @@ func (s *server) OnSessionClose(ctx *gortsplib.ServerHandlerOnSessionCloseCtx) {
func (s *server) OnDescribe(ctx *gortsplib.ServerHandlerOnDescribeCtx) (*base.Response, *gortsplib.ServerStream, error) {
log.Printf("describe request")
s.mutex.Lock()
defer s.mutex.Unlock()
s.mutex.RLock()
defer s.mutex.RUnlock()
// stream is not available yet
if s.stream == nil {
@@ -71,8 +71,8 @@ func (s *server) OnDescribe(ctx *gortsplib.ServerHandlerOnDescribeCtx) (*base.Re
func (s *server) OnSetup(ctx *gortsplib.ServerHandlerOnSetupCtx) (*base.Response, *gortsplib.ServerStream, error) {
log.Printf("setup request")
s.mutex.Lock()
defer s.mutex.Unlock()
s.mutex.RLock()
defer s.mutex.RUnlock()
// stream is not available yet
if s.stream == nil {