Sobes.tech
Middle

Pracovali ste niekedy s asynchrónnosťou?

sobes.tech AI

Odpoveď od AI

Áno, práca s asynchrónnosťou je bežnou praxou, najmä pri spracovaní dát a interakcii s externými službami. V Go sa na to používajú gorutiny a kanály, ktoré umožňujú vykonávať úlohy paralelne a efektívne riadiť tok dát.

Príklad asynchrónneho spracovania s gorutinami a kanálmi:

func processData(data []int, results chan<- int) {
    for _, v := range data {
        // simulácia spracovania
        results <- v * 2
    }
    close(results)
}

func main() {
    data := []int{1, 2, 3, 4, 5}
    results := make(chan int)

    go processData(data, results)

    for res := range results {
        fmt.Println("Spracované:", res)
    }
}

Asynchrónnosť pomáha neblokovať hlavný tok a zlepšuje výkon pri práci s veľkými objemami dát alebo sieťovými požiadavkami.