🐰 Golang

thumbnail
🐾   [golang] 고루틴 주의 사항

주의 사항 1) wg.Add(1) 위치가 중요하다 고루틴을 실행하기 전에 wg.Add(1) 를 실행야한다. waitGroup의 초기화를 로직 처리 전에 해줘야 타이밍 이슈를 피할 수 있다. 동시성 이슈가 있어서 add는 고루틴 실행 ...

thumbnail
🐾   [Golang] 고루틴이 끝나기 전에 main이 끝나는 문제 해결 방법

배경 고루틴이 끝나지도 않았는데 main 함수가 종료가 된다. 해결방법 main은 고루틴이 끝났는지 알 수 없다. 그래서 WaitGroup 사용해야한다. 예시 func Add() { sum := 1 + 2 fmt.Printf("...

thumbnail
🐾   [Golang] 고루틴(goroutine) 기본 문법

고루틴이란? 경량화된 쓰레드(Thread) 일반적으로 OS 스레드 1개와 언어 쓰레드 1개를 사용한다. (1:1) 하지만 고언어는 OS 스레드 하나에 여러개의 고루틴을 사용한다. 즉 여러개의 스레드를 사용한다는 뜻이다. 특징 메모리를...

thumbnail
🐾   [golang] 채널(channel) blocking 해결 방법

이전꺼 글 넣기 2022.10.06 - [Study/Go 언어] - [golang] 채널(channel)에서 주의할 점 해결 방법 close를 해주면 된다. 값이 빠져나간 곳에 데이터 타입의 기본값이 들어간다. 예를 들어서 int는 ...

thumbnail
🐾   [Golang] 채널(channel) 기본 문법

채널이란? 값을 전달하는 통로이다. 고루틴에서 고루틴으로 서로 값을 주고 받을 때 많이 사용한다. 채널 생성 방법 ch := make(chan 데이터타입, 사이즈) 예시 ch := make(chan int, 3) int 타입의 채널에...

thumbnail
🐾   [Golang] 채널(channel)에서 주의할 점

이전꺼 글 넣기 2022.10.05 - [Study/Go 언어] - [golang] 채널(channel) 기본 문법 주의할 점 1) 채널이 꽉 찼을 경우 예를 들어보자 ch := make(chan int, 3) ch <- 1 c...

thumbnail
🐾   [Amazon SNS] aws를 연결하기

배경 로컬에 AWS 정보를 저장하고 aws에 있는 SNS를 불러오기 위해서 AWS 연결 코드를 써야한다. 코드 sess := session.Must(session.NewSessionWithOptions(session.Options{ ...

thumbnail
🐾   [golang] 주민등록번호와 외국인등록번호 유효성 검사 모듈 업데이트

registration-number 주민등록번호와 외국인번호 유효성 검사하는 모듈 설치방법 go get -u github.com/YooGenie/validate-registration-number Description 주민등록번호 입...

thumbnail
🐾   [Golang] XORM에서 this is incompatible with DISTINCT 에러 메시지 발생

배경 API를 돌리는데 에러 메시지가 떴다. 에러 메시지 Error 3065: Expression #1 of ORDER BY clause is not in SELECT list, references column '테이블명.컬렁명' w...

thumbnail
🐾   [비동기프로그래밍] CLI통해 aws 접근하기

배경 AWS SNS를 사용하기 위해서 AWS 홈페이지에서 코드를 가져왔다. 그런데 에러가 났다 이유를 몰라서 동료 개발자에 도움을 청했다. aws를 연결하는 방법을 알려줬다. 에러 RequestError: send request fa...