>백엔드 개발 >Golang >golang 동시 프로그래밍이란 무엇입니까?

golang 동시 프로그래밍이란 무엇입니까?

(*-*)浩
(*-*)浩원래의
2019-12-13 14:16:181973검색

golang 동시 프로그래밍이란 무엇입니까?

간단히 말하면 소위 동시 프로그래밍은 하나의 프로세서에서 여러 작업을 "동시에" 처리하는 것을 의미합니다.

Golang 언어에서는 동시에 사용되는 코루틴 메커니즘도 구현하기가 매우 편리합니다. go 키워드만 사용하면 됩니다. #推荐#(추천 학습:GO)🎜🎜

🎜🎜#고루틴이란#🎜🎜 ## 🎜🎜##고루틴은 GO 병렬 병렬의 핵심입니다 디자인. 최종 분석에서 고루틴은 실제로 스레드보다 작은 코루틴입니다. Go 언어는 이러한 고루틴 간의 메모리 공유를 실현하는 데 도움이 됩니다.

고루틴을 실행하는 데는 매우 적은 스택 메모리(약 4~5KB)만 필요하며 물론 해당 데이터에 따라 확장됩니다. 이로 인해 수천 개의 동시 작업을 동시에 실행할 수 있습니다. 고루틴은 스레드보다 사용하기 쉽고 효율적이며 가볍습니다.

일반적인 상황에서 수십 개의 스레드를 실행하는 일반 컴퓨터는 약간 과부하가 걸리지만 동일한 시스템에서는 쉽게 수백 또는 수천 개의 고루틴이 리소스를 놓고 경쟁할 수 있습니다.

고루틴 생성

함수 호출문 앞에 go 키워드만 추가하면 동시 실행 단위가 생성됩니다. 개발자는 실행 세부 사항을 알 필요가 없으며 스케줄러는 적절한 시스템 스레드에서 실행되도록 자동으로 정렬합니다.

동시 프로그래밍에서는 일반적으로 프로세스를 여러 조각으로 나누고 각 고루틴이 작업을 담당하도록 하려고 합니다. 프로그램이 시작되면 주요 기능이 별도의 고루틴에서 실행됩니다. 우리는 이것을 메인 고루틴이라고 부릅니다. go 문을 사용하여 새로운 고루틴이 생성됩니다.

go 언어의 동시성 설계 덕분에 이 목표를 쉽게 달성할 수 있습니다

위 내용은 golang 동시 프로그래밍이란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.