Sobes.tech
Junior — Middle

Aké máte skúsenosti s používaním kontextov vo vašich projektoch?

sobes.tech AI

Odpoveď od AI

V projektoch v Go som aktívne používal balík context na riadenie času vykonávania operácií a na zrušenie požiadaviek. Napríklad, pri práci s HTTP požiadavkami alebo databázami som vytváral kontext s časovým limitom, aby som predišiel zaseknutiu alebo únikom zdrojov.

Príklad použitia kontextu s časovým limitom:

ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel()

result, err := db.QueryContext(ctx, "SELECT * FROM users")
if err != nil {
    // spracovanie chyby
}

Tiež som používal kontexty na prenos metadát medzi vrstvami aplikácie, napríklad identifikátory požiadaviek na logovanie a sledovanie. To pomáha urobiť kód lepšie spravovateľný a citlivejší na zrušenie operácií.