고랭지농업

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

39건
+
제목 글쓴이 날짜 조회
23-12-06 조회 644
23-03-15 조회 1,320
23-03-15 조회 638
23-03-03 조회 864
23-03-03 조회 734
23-02-06 조회 1,027
23-02-05 조회 688
23-02-05 조회 746
23-01-07 조회 728
22-12-23 조회 1,035
22-12-11 조회 1,153
22-12-02 조회 723
22-04-08 조회 1,042
22-02-22 조회 1,100
22-02-22 조회 1,256
22-02-05 조회 1,166
21-10-17 조회 1,772
21-10-10 조회 1,440
21-10-10 조회 1,345
21-10-10 조회 1,415
21-10-08 조회 1,341
21-10-04 조회 1,284
21-05-22 조회 1,331
21-04-22 조회 1,965
20-09-01 조회 1,406
20-02-23 조회 2,402
20-02-16 조회 1,777
20-02-16 조회 1,394
19-12-23 조회 1,626
19-12-11 조회 1,371