고랭

고랭

    [golang] 패키지 만들어보기

    패키지 메인 패키지를 임포트해서 사용해보다가 패키지를 만들어보겠습니다.😎 만든 패키지는 만들어서 GOPATH 의 src 아래에 넣어야지 인식이 가능합니다. go env 명령어로 GOPATH 를 확인하고 패키지를 만들어줍니다. 저같은 경우는 C:\go-workspace\src 밑에 cal 폴더를 만들고 안에 sum.go 를 만들었습니다. // Sum.go package cal // Sum function func Sum(a int, b int) int { return a + b } 다른곳에서 이제 사용이 가능합니다. 함수 첫글자를 대문자로 해야지 그 함수를 아래처럼 외부에서 사용가능합니다. package main import ( "cal" "fmt" ) func main() { result := cal.S..

    [golang] 채널 (Channel)

    고루틴 고루틴이 비동기여서, 메인이 먼져 종료가 되여 문제가 있습니다. 아래는 문제의 코드입니다. WaitGroup을 통해 대기하면 되겠지만, 그건 기다리게 할뿐 고루틴 사이에 흐름을 제어하지는 않습니다. package main import "fmt" func main() { var a, b = 10, 5 var result int go func() { result = a + b }() fmt.Printf("두 수의 합은 %d입니다.", result) } 채널 일단 고루틴이 접근할 수 있는 고루틴만의 공간을 채널이라고 생각해봤습니다. 채널은 값을 받을 때까지 대기하고 (main) 채널이 값을 받을 때 까지 고루틴도 대기 합니다. package main import "fmt" func main() { va..