Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Bug in Windows with multiprocessing

Abierto
#35 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
38/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
python
Área
backend

Línea de trabajo

Comience con el reproductor de errores de Windows para multiprocessing proporcionado e inspeccione el comportamiento de Container.get() de tomlkit cuando el contenedor se serializa con pickle en otro proceso. Compare el acceso mediante indexación directa con get('path') antes y después de la transferencia entre procesos, y compare Windows con Linux si está disponible. Se considera terminado cuando la búsqueda de configuración reproducida se comporta de forma coherente entre procesos.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Hi. I ran into an issue when using tomlkit on windows with multiprocessing.

import multiprocessing as mp
import tomlkit


class Worker: 
    def run(self): 
        print(self.db_conf) 
        print(self.db_conf['path'])
        # bug here, get() returns None
        print(self.db_conf.get('path')) 

if __name__ == '__main__':
    w = Worker()
    conf = tomlkit.loads("""
    [db]
    path = '~/files/'
    """)
    w.db_conf = conf['db']
    p = mp.Process(target=w.run)
    p.start()
    p.join()

The output is:

{'path': '~/files/'}
~/files/
None

Somehow Container.get() lost track of the values after pickling into another process. On Linux this script works fine.

Lenguaje dominante
Python
Estrellas
850
Forks
163
Merge medio
13 min
PR fusionados (30 d)
2

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de python-poetry/tomlkit

Todos los issues de python-poetry/tomlkit

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.