CodeChain-io / CodeChain-io/remote-trait-object

Why the port must be dropped when the context is dropped?

Ouverte
#48 6 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
question
Langage dominant
Rust
Étoiles
13
Forks
5
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

https://github.com/CodeChain-io/remote-trait-object/blob/7ac07c741059ae583a05143a62cd6b07898e1c0b/remote-trait-object/src/context.rs#L63

Currently, it fails to drop the context when the port is still held by others. But, there is no way to guarantee whether all other holders released before the context dropped.
How about dropping context calls shutdown and making the methods of the `Port` returns a `Result`?
It also should make the shutdown of the `Port` takes the mutable reference of the self. It means the user can access the port after shutdown, but I think this would be safer.

Guide de contribution

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

Piste de recherche

Lisez remote-trait-object/src/context.rs à la ligne 63, puis retracez la façon dont la propriété de Context et de Port et l’arrêt interagissent actuellement. Résolvez la sémantique proposée de l’arrêt et de l’API renvoyant Result avant de modifier quoi que ce soit ; le travail est terminé lorsque le comportement de la suppression de Context alors que des Ports restent détenus est explicitement défini et implémenté.

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

Évaluation

Stack technique
rust
Domaine
distributed-systems
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
30/100

Recevez les nouvelles issues par e-mail

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