Golang
È possibile eseguire più goroutine contemporaneamente in un'applicazione?
Può parlare dell'area principale di attività dell'ultima organizzazione in cui ha lavorato?
Qual è il volume di test del codice che solitamente realizzi con i test unitari?
Qual componente di Kafka garantisce la prevenzione della rilettura degli stessi messaggi?
Come si possono individuare le condizioni di gara nel codice di programmazione?
Come si possono prevenire i deadlock in un ambiente multithread?
Descrivi la tua esperienza nell'applicazione della generazione automatica di codice nei progetti.
In quale caso avviene la selezione automatica dell'opzione predefinita in una costruzione select in un linguaggio di programmazione?
func (c *Client) Send(ctx context.Context, messages []Message, maxWorkers int) error { sem := make(chan struct{}, maxWorkers) var wg sync.WaitGroup var resultErr error var once sync.Once for _, msg := range messages { wg.Add(1) go func(msg Message) { defer wg.Done() sem <- struct{}{} defer func() { <-sem }() body, err := json.Marshal(msg) if err != nil { once.Do(func() { resultErr = err; cancel() }) return } req, _ := http.NewRequestWithContext( ctx, http.MethodPost, c.url, bytes.NewReader(body), ) req.Header.Set("Content-Type", "application/json") resp, err := c.httpClient.Do(req) if err != nil { once.Do(func() { resultErr = err; cancel()}) return } defer resp.Body.Close() if resp.StatusCode >= 500 { once.Do(func() { resultErr = fmt.Errorf("server error") cancel()}) return } c.sentCount.Add(1) time.Sleep(time.Second) }(msg) } wg.Wait() }
Spiega il concetto di utilizzo di un pool di thread per elaborare i compiti in un'applicazione multithread.
Parla dei pattern di progettazione. Cos'è il double-checked locking e a cosa serve?
Hai esperienza di partecipazione a screening tecnici o colloqui?
Come risolvere il problema di overflow del contenitore con file di log in Docker?
Come si può aumentare la velocità di ricerca di un elemento per chiave in un array di dati?
Come evitare errori di overflow del buffer in un programma?
Quali passaggi devono essere seguiti per migrare un'applicazione monolitica a un'architettura a microservizi?
Spiega il meccanismo di raccolta automatica dei rifiuti nel linguaggio Go e come gestisce la memoria.
Come si può verificare la legittimità di un certificato digitale?
Le mappe (Map) hanno la capacità di determinare il loro carico o capacità attuale?
Quali tipi di errori o incoerenze possono verificarsi quando le transazioni vengono eseguite contemporaneamente?