coder / coder/websocket

docs: Rationalize wsjson buffer pooling and explain tradeoffs

Ouverte
#418 8 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
docs
Langage dominant
Go
Étoiles
5.5k
Forks
372
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

I see that this library is using `sync.Pool` to pool buffers for wsjon sub-package. `sync.Pool` is suitable only for pooling objects of same size. If they are of different size, you have a problem: those buffers will just grow and grow never to shrink.

See https://github.com/golang/go/issues/23199 for more background.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Locate the wsjson sub-package and its sync.Pool buffer implementation, then read the linked Go issue about pooling objects of different sizes. Determine the current buffer-size behavior and document the tradeoffs of the available pooling approach. Done means the pooling strategy is rationalized and its limitations are explained.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
go
Domaine
networking
Type d'issue
Refactorisation
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.