[go] 시간을 활용하여 실시간 작업 처리하기
이번 포스트에서는 Go 언어를 사용하여 시간을 활용하여 실시간 작업 처리하는 방법에 대해 알아보겠습니다. 실시간 작업 처리를 위해 Go 루틴 및 타이머를 사용할 것입니다.
시간 기반 실시간 작업 처리
Go 언어에서 시간을 활용하여 실시간 작업을 처리하려면 time
패키지의 Ticker
나 After
함수를 사용할 수 있습니다.
Ticker 사용하기
Ticker
는 주기적으로 작업을 수행할 수 있도록 해줍니다. 다음은 Ticker
를 사용한 예제입니다.
package main
import (
"fmt"
"time"
)
func main() {
ticker := time.NewTicker(1 * time.Second)
for {
<-ticker.C
fmt.Println("실시간 작업 처리 중...")
}
}
위 예제에서는 1초마다 “실시간 작업 처리 중…“을 출력하도록 하였습니다.
After 함수 사용하기
After
함수는 특정 시간이 경과한 후에 작업을 수행할 수 있도록 해줍니다. 다음은 After
함수를 사용한 예제입니다.
package main
import (
"fmt"
"time"
)
func main() {
select {
case <-time.After(2 * time.Second):
fmt.Println("2초 후에 작업 수행")
}
}
위 예제에서는 2초 후에 “2초 후에 작업 수행”을 출력하도록 하였습니다.
요약
Go 언어를 사용하여 시간을 활용하여 실시간 작업을 처리하는 방법에 대해 알아보았습니다. time
패키지의 Ticker
와 After
함수를 통해 주기적인 작업 및 특정 시간 후의 작업을 처리할 수 있습니다.
이상으로 실시간 작업 처리에 대한 내용을 마치도록 하겠습니다.
자세한 내용은 Go 언어 공식 문서를 참고하시기 바랍니다.