Back to questions
Junior — Middle
78
Как можно реализовать выполнение задач без применения встроенного планировщика событий или задач?
Companies where asked
Цифровая Эволюция
Answer from AI
sobes.tech AI
Если нельзя использовать встроенный планировщик задач (например, cron или встроенные таймеры), выполнение задач можно реализовать с помощью горутин и каналов в Go.
Например, можно создать бесконечный цикл в отдельной горутине, который будет ждать определённое время и запускать задачу вручную:
package main
import (
"fmt"
"time"
)
func task() {
fmt.Println("Выполнение задачи", time.Now())
}
func main() {
go func() {
for {
task()
time.Sleep(1 * time.Hour) // задержка между выполнениями
}
}()
select {} // блокируем main, чтобы программа не завершилась
}
Таким образом, можно самостоятельно управлять расписанием, не используя встроенные планировщики.