El método __init__ demente que casi me vuelve loco
2025-04-19
Una prueba de servicio Python fallaba intermitentemente debido a un método __init__ extraño. La clase FooBarWidget, en su __init__, inicia un nuevo hilo para ejecutar los métodos __init__ y run de su clase padre FooWidget. Este diseño intenta evitar el bloqueo del hilo principal porque los objetos zmq.Socket no se pueden mover entre hilos. Sin embargo, cerrar una instancia FooBarWidget demasiado pronto puede dejar el __init__ de FooWidget inacabado, lo que resulta en un atributo 'should_exit' faltante y un error. Esta narración humorística detalla la experiencia de depuración y explora la lógica detrás de este diseño poco convencional.
Desarrollo