func Copy(src io.Reader, dst io.Writer) error { //... } import gocopy s := file.Open() err := gocopy.Copy(s, d) func Copy(src io.Reader, dst io.Writer) (statusCh, error) { //... go func() { statusCh }() } func Read() { select { case status := <-statusCh: } } type Stat struct { status string err error } func Copy(src io.Reader, dst io.Writer) chan Stat { //... statusCh := make(chan Stat{}) go func() { statusCh{ } } return statusCh } func Read() { select { case status := <-statusCh: } }
Golang
Yra funkcija `unpredictableFunc()`, kuri turi būti apgaubta taip, kad ji veiktų su laiko limitu (pavyzdžiui, 1 sekundė) ir būtų registruojamas jos vykdymo laikas. // Yra funkcija, kuri veikia neribotą laiką ir grąžina skaičių. // Jos turinys negali būti keičiamas (įsivaizduokite, kad viduje yra tinklo užklausa). func unpredictableFunc() int64 { rnd := rand.Int63n(5000) time.Sleep(time.Duration(rnd) * time.Millisecond) return rnd } // Reikia pakeisti apgaubiančią funkciją, kuri veiks su nustatytu laiko limitu (pavyzdžiui, 1 sekundė). // Jei "ilga" funkcija baigiasi per šį laiką, tai puiku, grąžiname rezultatą. // Jei ne, grąžiname klaidą. Šiuo atveju mūsų nesirūpina darbo rezultatas. // // Be to, reikia išmatuoti, kiek laiko ši funkcija veikė (paprastai išveskite į logą). // Apgaubiančios funkcijos parašas gali būti keičiamas. func predictableFunc() int64 { return unpredictableFunc() }
Ką ieškai darbe, kuo nori užsiimti?
Kaip veikia SSL/TLS? Aprašykite ryšio nustatymo procesą.
Kas yra slice Go kalboje?
Kokioje komandoje dirbote banke? Kokia buvo komandos užduotis?
papasakok apie resp.Body.Close() — kodėl tai reikalinga ir kodėl nustatei buferį 10?
Kaip veikia viduje context.WithTimeout?
Kaip veikia žemėlapiai Go?
Ką rodys kodas? package main import "fmt" func main() { nums := make([]int, 1, 2) fmt.Println(nums) // appendSlice(nums, 1024) fmt.Println(nums) // mutateSlice(nums, 1, 512) fmt.Println(nums) // } func appendSlice(sl []int, val int) { sl = append(sl, val) } func mutateSlice(sl []int, idx, val int) { sl[idx] = val }
Kaip patikrinti CPU ir atminties apkrovą Linux?
Ar rašėte operatorius Kubernetes?
Kas yra indeksai duomenų bazėse? Kokie yra indeksų tipai?
Kuo skiriasi gorutinos nuo OS sriegių? Kam jos reikalingos?
Kas yra transakcijų izoliacijos lygiai? Kuriuos naudojote?
**Sąlyga** Kelių URL užklausos turi būti vykdomos lygiagrečiai. Reikia parodyti HTTP būsenas ir tvarkyti klaidas.
Kaip rasti lėtą užklausą PostgreSQL ir kaip ją optimizuoti?
**Sąlyga** Kelių URL užklausos turi būti vykdomos lygiagrečiai. Rodyti HTTP būsenas, tvarkyti klaidas. ```go package main func main() { urls := []string{"[link]"} // Daryk kažką } ```
Kaip skiriate Junior, Middle ir Senior programuotojus? Pagal kokius kriterijus laikote save Senior?
Parašykite SQL užklausą, kuri parodytų **kliento vardą**, **miestą** ir **bendrą visų jo užsakymų sumą**. Galutiniame rezultate turėtų būti tik tie klientai, kurių bendros išlaidos viršija **1000** vienetų. --- **Duomenų schema:** 1. **`customers` lentelė:** - `customer_id` (int) – unikalus kliento identifikatorius. - `customer_name` (varchar) – kliento vardas. - `city` (varchar) – gyvenamasis miestas. 2. **`orders` lentelė:** - `order_id` (int) – unikalus užsakymo numeris. - `customer_id` (int) – kliento ID, kuris atliko pirkimą. - `total_amount` (decimal) – konkretaus užsakymo suma.