고랭지농업

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("저게 먼절까?)

}

```

 

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

 

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

더 좋은 예제로 오겠습니다

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

|

댓글 1개

예제 고맙습니다.
댓글을 작성하시려면 로그인이 필요합니다.

Golang

+
제목 글쓴이 날짜 조회
3년 전 조회 929
3년 전 조회 1,080
3년 전 조회 647
3년 전 조회 928
4년 전 조회 980
4년 전 조회 1,130
4년 전 조회 1,047
4년 전 조회 1,635
4년 전 조회 1,367
4년 전 조회 1,187
4년 전 조회 1,267
4년 전 조회 1,269
4년 전 조회 1,215
4년 전 조회 1,220
4년 전 조회 1,871
5년 전 조회 1,298
6년 전 조회 2,319
6년 전 조회 1,690
6년 전 조회 1,257
6년 전 조회 1,460
6년 전 조회 1,300
6년 전 조회 1,060
6년 전 조회 2,034
6년 전 조회 1,457
6년 전 조회 1,436
6년 전 조회 2,966
6년 전 조회 1,321
6년 전 조회 1,919
6년 전 조회 1,326
6년 전 조회 2,714