> 백엔드 개발 > Golang > golang 파이프라인 스레드는 안전한가요?

golang 파이프라인 스레드는 안전한가요?

(*-*)浩
풀어 주다: 2019-12-30 14:48:50
원래의
5974명이 탐색했습니다.

golang 파이프라인 스레드는 안전한가요?

스레드 안전성이 여러 고루틴이 동시에 읽고 쓸 수 있도록 허용하는 것으로 정의된다면 golang의 채널은 스레드로부터 안전합니다. 동일한 채널을 동시에 읽고 쓰는 경우에는 잠글 필요가 없습니다.

channel in golang 🎜🎜#go)

채널은 다음과 같은 통신에 사용됩니다. goroutines

채널을 사용하지 않는 경우 공유 전역 변수를 사용하고 잠가야 합니다

// synchornized 同步
// golang中的 sync包中有互斥锁 
var lock sync.Mutex  // mutex 互斥
lock.Lock() // 上锁
// 多个goroutine同时对相同的数据进行修改
lock.Unlock() // 解锁
로그인 후 복사
#🎜🎜 #The 동기화 잠금 사용의 동시 효율성은 매우 낮습니다

channel은 주로 고루틴 통신에 사용되며 종료하기 전에 고루틴 실행이 끝나기를 기다리는 메인 스레드의 문제를 해결합니다

채널의 기본 개념

은 본질적으로 FIFO 데이터 구조입니다 - 대기열

스레드 안전, 잠금 필요 없음

채널에는 문자열 채널 chan 문자열과 같은 유형이 있으며 문자열 데이터만 저장할 수 있습니다

위 내용은 golang 파이프라인 스레드는 안전한가요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿