Sobes.tech

Golang

¿Cómo se puede evitar la condición de carrera? ¿Cómo funciona un Mutex?

Middle
YadroYadro
83

¿Cómo sigues desarrollándote profesionalmente?

Senior
Flant
83

¿Cómo se manifiesta la falta de disponibilidad en el sistema CP?

Senior
purrweb
83

¿Será cómodo trabajar con la documentación técnica en inglés?

Senior
UPSL
83

¿Discutieron el desarrollo? ¿Había un plan de desarrollo?

Senior
AvitoAvito
83

Cuéntame sobre el proceso de lanzamiento: ¿cómo funciona el lanzamiento?

Middle+
КуперКупер
83

¿Qué sucede al hacer append si la capacidad del slice no es suficiente (aloca un nuevo array)?

Middle
WildberriesWildberries
83

¿Actualmente trabajas en [empresa] — qué tan relevante es esto y qué te llevó a considerar una nueva oferta?

Middle+
AxenixAxenix
83

¿Qué te interesa ahora en un nuevo empleador? ¿Cómo sería una experiencia laboral ideal?

Senior
А7
83

¿Qué transmitirías dentro de este canal (qué estructura de datos)?

Middle
Aliexpress
83

SELECT departamento, SUM(salary) FROM empleados GROUP BY departamento HAVING SUM(salary) > 10000; emails email | usuario Mostrar email y la cantidad de veces que aparece

Middle
WildberriesWildberries
83

Diseñe un sistema de aplicación de ajedrez: emparejamiento, creación de sesiones de juego y registro de resultados. Indique los servicios, su interacción y los almacenes de datos.

Senior
purrweb
83

¿Cómo provocar pánico al trabajar con un canal? ¿Qué sucede con las operaciones en un canal nil y un canal cerrado?

Middle
YadroYadro
83

¿Qué proyectos estás liderando, cuáles son las tareas de alto nivel que realizas?

Middle+
VKVK
83

func (p *Pool) Stop() { p.mu.Unlock() // Ahora se puede cerrar el canal de forma segura close(p.tasks) // señal a los workers: no habrá más tareas, lee el resto p.wg.Wait() // esperamos a que terminen todos los goroutines p.cancel() // cancelamos el contexto por si acaso fmt.Println("Pool detenido.") } // ForceStop detiene forzosamente todos los workers sin esperar a que terminen las tareas. // Los workers serán interrumpidos inmediatamente a través del contexto. func (p *Pool) ForceStop(timeout time.Duration) { fmt.Printf("Deteniendo forzosamente el pool (timeout: %v)...\n", timeout) // Bloqueamos la adición de nuevas tareas p.mu.Lock() p.isOpen = false p.mu.Unlock() // Cerramos el canal para que los workers no tomen nuevas tareas close(p.tasks) // Cancelamos el contexto – esto interrumpirá todas las tareas en ejecución p.cancel() // Damos un tiempo limitado para finalizar done := make(chan struct{}) go func() { p.wg.Wait() close(done) }() select { case <-done: fmt.Println("Pool detenido forzosamente (todos los workers han terminado)") case <-time.After(timeout): fmt.Println("Pool detenido forzosamente (timeout, pueden quedar goroutines colgadas)") } }

Senior
Pasul LTD
83

¿Hasta qué nivel de análisis descompusieron las tareas?

Senior
AvitoAvito
83

¿Qué protocolos de nivel de aplicación funcionan sobre TCP y UDP?

Senior
AvitoAvito
83

¿Qué exactamente se almacenó en caché y qué reglas de invalidación se utilizaron?

Senior
А7
83

¿Cómo exactamente IP resuelve el problema del enrutamiento? ¿Cómo entiende el enrutador a dónde enviar el paquete?

Middle
Graveling
83

Cuéntame sobre ti, tu experiencia, cómo elegiste la dirección de TI y el desarrollo, por qué exactamente Go, cómo avanzaste en tu carrera?

Senior
Себе
83
/412