2010-05-30 10 views
3

Quel terme dois-je utiliser pour décrire des situations (ou des bogues dans le logiciel) provoquées par la lecture, l'écriture, l'envoi, le recv faisant moins de travail que prévu?Comment ça s'appelle quand écrire ou lire retourne moins que demandé?

Par exemple, write(fd, "123456", 6); peut renvoyer 3 et nous devons écrire "456" pour terminer notre travail.

/* Toujours dans le doute entre "short write/read" et "truncation de données" après avoir lu les réponses. */

Répondre

1

courte écriture ....

+0

"écriture courte" vs "tronquer lors de l'écriture". Dois-je utiliser "troncature sur écriture" quand aucune perte de données se produit, juste plus d'appels d'écriture? –

+0

@Vi: la troncation implique généralement une perte/suppression permanente des données (vous pouvez tronquer un fichier existant = supprimer des données de sa fin). Bref lecture/écriture est juste que, lire moins que prévu, les données sont toujours disponibles, mais pas traitées. –

0

Je ne suis pas sûr qu'il a un nom spécifique. Cela a à voir avec la mise en mémoire tampon et la disponibilité des canaux. Par exemple, lorsque vous envoyez sur un réseau, il y a une sorte de fenêtre que vous pouvez remplir complètement, mais si les données précédentes n'ont pas encore été complètement envoyées, alors vous pouvez seulement streamer suffisamment pour remplir cette fenêtre .

3
+0

« Le bug dans le programme xxx est une mauvaise manipulation de la troncature des données par écrit à la prise » Est-il acceptable? –

+2

"Bogue xxx: les données sont tronquées lorsqu'elles sont écrites sur le socket". –

+0

"Les données sont tronquées lorsqu'elles sont écrites sur ce système de fichiers, le programme doit donc appeler' write' encore et encore ". Bonne phrase? –