Golang 고루틴 > Golang

Golang

Golang 고루틴 정보

Golang 고루틴

본문

글은 써야되는데 여친이랑 헤어져서 그런 겨를이 없었네요

암튼 고루틴에 대한 글 하나 쓰구 다음에 다시 오겠습니다

 

=====

고루틴은 일단 쓰레드같은 개념이라고 보시면 됩니다.

OS 쓰레드보다는 훨씬 가볍게 비동기 병렬 처리를 구현할 수 있도록 할 수 있습니다.

Go 런타임이 자체 관리하며, 여러개의 Go루틴들은 종종 하나의 OS 쓰레드로도 실행되기도 합니다.

 

즉 Go루틴들은 OS 쓰레드과는 1대 1로 대응하지 않으며, 훨신 적은 OS 쓰레드를 사용합니다

 

메모리 측면에서도 Go루틴은 몇 킬로바이트의 스택(필요시 동적으로 증가함.)을 가지고 있지만

OS 쓰레드들은 1 메가바이트의 스택을 가지고 있습니다.

 

고루틴을 생성하는 방법은 아주 쉽습니다.

 

```

go fmt.Println("고루틴으로 하이!")

```

 

단지 함수 앞에 go 를 붙이면 됩니다.

 

```

func main() {

   go func() {

        fmt.Println("이게 먼절까?")

   }

   fmt.Println("저게 먼절까?)

}

```

 

이 중에 '이게 먼절까?' 와 '저게 먼절까?' 중 뭐가 먼저 출력되는 지는 알 수 없습니다.

 

다음엔 쫌 더 자세하게 설명할 수 있게 더 공부하고,

더 좋은 예제로 오겠습니다

언제올지는 몰라요... 요즘 노래만 듣느라

추천
0

댓글 1개

전체 40 |RSS
Golang 내용 검색

회원로그인

진행중 포인트경매

  1. 참여87 회 시작24.04.12 12:32 종료24.04.19 12:32
  2. 참여50 회 시작24.04.12 12:32 종료24.04.19 12:32
(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT