python / python/cpython

Thread-safe atomic counters

Abierto
#124,366 3 comentarios 7 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

topic-free-threading type-feature
Lenguaje dominante
Python
Estrellas
77.2k
Forks
35.9k
Métricas de merge de PR
Métricas de PR pendientes

Descripción

Feature or enhancement

Python doesn't currently have a thread-safe atomic counter. CPython currently internally uses a few different patterns to implement thread-safe counters. For example, some test code uses appends to a shared list because the implementation of list.append() is atomic.

We should provide a counter that is explicitly thread-safe so that people don't have to rely on other idioms. The minimum initial API should provide:

  • atomic increment
  • get value (i.e., inspect)

The threading module may be a good place for it.

cc @rhettinger

Guía de contribución

Abrir la guía de contribución

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.

Línea de trabajo

Comienza revisando el módulo threading y los patrones existentes de contadores seguros para hilos descritos en el issue. Define y prueba la API mínima para el incremento atómico y la inspección del valor, incluido el comportamiento bajo acceso concurrente.

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

Evaluación

Stack tecnológico
python
Área
operating-systems
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Tranquilo
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.